Sommaire

BONJOUR
Musique "Invention BWV784" J.S. BACH 1685-1750

RC Resource and Compiler


C pour Windows - API de Windows

Reference API pour C Windows Description

Vu dans ... http://www.gladir.com

Nom de l'API | Bibliothèque | Description
AbnormalTermination |  | Cette fonction permet d'indiquer que le «TRY-FINALLY» d'un bloc s'est exécuté normalement.
AbortDoc | gdi32.dll | Cette fonction permet d'effectuer l'annulation d'une impression d'un document.
AbortPath | gdi32.dll | Cette fonction permet de terminer et de restituer toutes les palettes du périphérique de contexte.
AbortPrinter | winspool.drv | Cette fonction permet d'effacer un fichier dans le tampon d'impression si l'imprimante est configurée avec un tampon d'impression.
AbortSystemShutdownA | advapi32.dll | Cette fonction permet d'annuler l'opération de fermeture ou de redémarrage en cours d'exécution du système d'exploitation Windows.
AbortSystemShutdownW | advapi32.dll | Cette fonction permet d'annuler l'opération de fermeture ou de redémarrage en cours d'exécution du système d'exploitation Windows avec des paramètres de chaine de caractères étendue (Unicode).
AccessCheck | advapi32.dll | Cette fonction permet, à une application serveur, de vérifier les accès client à un objet de contrôle d'accès.
AccessCheckAndAuditAlarmA | advapi32.dll | Cette fonction permet d'effectuer une validation d'accès et de provoquer le message approprié.
AccessCheckAndAuditAlarmW | advapi32.dll | Cette fonction permet d'effectuer une validation d'accès et de provoquer le message approprié avec des paramètres de chaine de caractères étendue (Unicode).
AcsLan | dlcapi.dll | Cette fonction permet de communiquer avec d'autres ordinateurs ou par périphérique réseau, comme des imprimantes, en utilisant le protocole DLC (Data Link Control).
ActivateKeyboardLayout | user32.dll | Cette fonction permet d'activer une disposition différente du clavier pour le processus courant.
AddAccessAllowedAce | advapi32.dll | Cette fonction permet d'ajouter un accès autorisé à l'ACE d'un ACL.
AddAccessDeniedAce | advapi32.dll | Cette fonction permet d'ajouter un accès refusé à l'ACE d'un ACL.
AddAce | advapi32.dll | Cette fonction permet d'ajouter un ACE à un ACL spécifié.
AddAuditAccessAce | advapi32.dll | Cette fonction permet d'ajouter un ACE système à un ACL système.
AddAtomA | kernel32.dll | Cette fonction permet d'ajouter une chaine de caractères ASCIZ à l'Atom global.
AddAtomW | kernel32.dll | Cette fonction permet d'ajouter un caractère étendue (Unicode) à l'Atom global.
AddFontResourceA | gdi32.dll | Cette fonction permet d'ajouter une police de caractères à partir d'un fichier.
AddFontResourceW | gdi32.dll | Cette fonction permet d'ajouter une police de caractères à partir d'un fichier avec des paramètres de chaine de caractères étendues (Unicode).
AddFormA | winspool.drv | Cette fonction permet d'ajouter un formulaire à la liste des formulaires de l'imprimante spécifié.
AddInksetInterval | penwin32.dll | Cette fonction permet de fixer l'intervalle de la cartouche d'encre de l'imprimante.
AddJobA | winspool.drv | Cette fonction permet de fixer la chaine de caractères du répertoire contenant les fichiers du tampon d'imprimante.
AddMonitorA | winspool.drv | Cette fonction permet d'installer un moniteur d'imprimante local et des liens de configuration, de données et de fichiers du moniteur.
AddPenDataHRC | penwin32.dll | Cette fonction permet d'ajouter un objet de données de crayon lumineux.
AddPenInputHRC | penwin32.dll | Cette fonction permet d'ajouter un objet de données de crayon lumineux exporté.
AddPointsPenData | penwin32.dll | Cette fonction permet d'ajouter un ensemble de point de données à l'objet de crayon lumineux.
AddPortA | winspool.drv | Cette fonction permet d'ajouter un nom de port à la liste des ports supporté par l'imprimante.
AddPrinterA | winspool.drv | Cette fonction permet d'ajouter une imprimante à la liste des imprimantes.
AddPrinterConnectionA | winspool.drv | Cette fonction permet d'ajouter une connexion à l'imprimante pour l'utilisateur courant.
AddPrinterDriverA | winspool.drv | Cette fonction permet d'installer un pilote d'imprimante avec la configuration, les données et les fichiers du pilote.
AddPrintProcessorA | winspool.drv | Cette fonction permet d'installer un processeur d'imprimante à partir d'un serveur et d'une liste processeur d'imprimante supporté.
AddPrintProvidorA | winspool.drv | Cette fonction permet d'installer un fournisseur d'imprimante avec la configuration, les données et les fichiers du fournisseur.
AddWordsHWL | penwin32.dll | Cette fonction permet d'ajouter des mots dans une liste de mots.
AdjustTokenGroups | advapi32.dll | Cette fonction permet d'ajuster des groupes dans une liste d'objet à saisir.
AdjustTokenPrivileges | advapi32.dll | Cette fonction permet d'ajuster des prévilèges dans une liste d'objet à saisir.
AdjustWindowRect | user32.dll | Cette fonction permet de calculer l'espace requis par le rectangle d'une fenêtre basé sur un rectangle client.
AdjustWindowRectEx | user32.dll | Cette fonction permet de calculer l'espace requis par le rectangle d'une fenêtre avec un style étendue basé sur un rectangle client.
AdvancedDocumentPropertiesA | winspool.drv | Cette fonction permet d'afficher la configuration de l'imprimante spécifiée dans une boite de dialogue.
AllocateAndInitializeSid | advapi32.dll | Cette fonction permet d'alloué ainsi que d'initialiser l'identificateur de sécurité (SID) avec jusqu'à 8 sous-autorités.
AllocateLocallyUniqueId | advapi32.dll | Cette fonction permet d'alloué un identificateur local unique (LUID).
AllocConsole | kernel32.dll | Cette fonction permet de créer une nouvelle console.
AngleArc | gdi32.dll | Cette fonction permet de dessiner une ligne de segment et d'un arc de cercle.
AnimatePalette | gdi32.dll | Cette fonction permet de fixer la valeur des palettes de couleur logique.
AnyPopup | user32.dll | Cette fonction permet d'indiquer s'il existe un moins une fenêtre visible ou invisible sur le bureau de l'écran.
AppendMenuA | user32.dll | Cette fonction permet d'ajouter un nouvel item au menu courant.
AppendMenuW | user32.dll | Cette fonction permet d'ajouter un nouvel item au menu courant avec des paramètres de chaine de caractères étendues (Unicode).
Arc | gdi32.dll | Cette fonction permet de dessiner l'arc d'une ellipse.
ArcTo | gdi32.dll | Cette fonction permet de dessiner un arc d'une ellipse.
AreAllAccessesGranted | advapi32.dll | Cette fonction permet d'effectuer la vérification sur un ensemble de requête d'accès garantie.
AreAnyAccessesGranted | advapi32.dll | Cette fonction permet d'effectuer la vérification sur n'importe quel élément d'un ensemble de requête d'accès garantie.
AreFileApisANSI | kernel32.dll | Cette fonction permet d'indiquer si les fonctions pour fichier du Win32 utilise un ensemble de police de caractères ANSI ou une page OEM.
ArrangeIconicWindows | user32.dll | Cette fonction permet de minimiser les fenêtres enfants d'une fenêtre parente.
AttachThreadInput | user32.dll | Cette fonction permet de relier un processus avec un autre.
auxGetDevCapsA | winmm.dll | Cette fonction permet de demander les informations concernant le système audio auxiliaire.
auxGetNumDevs | winmm.dll | Cette fonction permet de demander le nombre de système audio auxiliaire reconnu par Windows.
BackupEventLogA | advapi32.dll | Cette fonction permet d'effectuer une sauvegarde du journal de bord dans un fichier de copie de sécurité.
BackupEventLogW | advapi32.dll | Cette fonction permet d'effectuer une sauvegarde du journal de bord dans un fichier de copie de sécurité avec des paramètres de chaine de caractères étendue (Unicode).
BackupRead | kernel32.dll | Cette fonction permet d'effectuer la lecture de flux de données associé avec un fichier ou un répertoire spécifié d'un tampon.
BackupSeek | kernel32.dll | Cette fonction permet de fixer la position dans le flux de données accessible par les fonctions «BackupRead» et «BackupWrite».
BackupWrite | kernel32.dll | Cette fonction permet d'effectuer l'écriture de flux de données associé avec un fichier ou un répertoire spécifié d'un tampon.
Beep | kernel32.dll | Cette fonction permet d'émettre un signal sonore sur le PC Speaker.
BeginDeferWindowPos | user32.dll | Cette fonction permet d'allouer de la mémoire sur de multiples positions de fenêtres d'une structure de données.
BeginPaint | user32.dll | Cette fonction permet de préparé les spécifications de la fenêtre pour la peindre et la remplir avec les informations de la structure spécifié.
BeginPath | gdi32.dll | Cette fonction permet d'ouvrir une braquette de chemin pour le périphérique de contexte (DC) spécifié.
BeginUpdateResourceA | kernel32.dll | Cette fonction permet de retourner l'identificateur Handle qu'utilise une fonction «UpdateResource» pour ajouter, supprimer ou remplacer dans un fichier exécutable.
BeginUpdateResourceW | kernel32.dll | Cette fonction permet de retourner l'identificateur Handle qu'utilise une fonction «UpdateResource» pour ajouter, supprimer ou remplacer dans un fichier exécutable avec des paramètres de chaine de caractères étendue (Unicode).
BitBlt | gdi32.dll | Cette fonction permet d'effectuer la copie d'un Bitmap vers l'écran.
BlockInput | user32.dll | Cette fonction permet d'arrêter les événements d'entrer comme le clavier, la souris,...
BringWindowToTop | user32.dll | Cette fonction permet d'activer et de porter, en haut de la pile des fenêtres, la fenêtre spécifiée.
BroadcastSystemMessageA | user32.dll | Cette fonction permet d'envoyer un message vers un récipient spécifié.
BroadcastSystemMessageW | user32.dll | Cette fonction permet d'envoyer un message vers un récipient spécifié avec des paramètres de chaine de caractères étendues (Unicode).
BuildCommDCBA | kernel32.dll | Cette fonction permet de remplir une structure DCB avec les valeurs spécifiées par une chaine de caractères de périphérique de contrôle.
BuildCommDCBW | kernel32.dll | Cette fonction permet de remplir une structure DCB avec les valeurs spécifiées par une chaine de caractères de périphérique de contrôle avec des paramètres de chaine de caractères étendue (Unicode).
BuildCommDCBAndTimeoutsA | kernel32.dll | Cette fonction permet de convertir la chaine de caractères des définitions d'un périphérique en un bloc de périphérique de contrôle et de placer les codes dans un bloc dans le périphérique de contrôle.
BuildCommDCBAndTimeoutsW | kernel32.dll | Cette fonction permet de convertir la chaine de caractères des définitions d'un périphérique en un bloc de périphérique de contrôle et de placer les codes dans un bloc dans le périphérique de contrôle avec des paramètres de chaine de caractères étendue (Unicode).
CallMsgFilterA | user32.dll | Cette fonction permet de passer un message à la fonction de filtre de message courant.
CallMsgFilterW | user32.dll | Cette fonction permet de passer un message à la fonction de filtre de message courant avec des paramètres de chaine de caractères étendues (Unicode).
CallNamedPipeA | kernel32.dll | Cette fonction permet d'effectuer une connection à l'aide d'un tuyau de type de message et de lire et d'écrire dans se tuyau et d'ensuite fermer le tuyau.
CallNamedPipeW | kernel32.dll | Cette fonction permet d'effectuer une connection à l'aide d'un tuyau de type de message et de lire et d'écrire dans se tuyau et d'ensuite fermer le tuyau avec des paramètres de chaine de caractères étendue (Unicode).
CallNextHookEx | user32.dll | Cette fonction permet de passer au prochain crochet des informations de crochet dans une chaine de crochet.
CallWindowProcA | user32.dll | Cette fonction permet d'appeler et de passer des informations de message à la fonction de fenêtre spécifié.
CallWindowProcW | user32.dll | Cette fonction permet d'appeler et de passer des informations de message à la fonction de fenêtre spécifié avec des paramètres de chaine de caractères étendues (Unicode).
CancelDC | gdi32.dll | Cette fonction permet d'annuler une opération en attente pour le périphérique de contexte (DC) spécifié.
CancelIo | kernel32.dll | Cette fonction permet d'annuler une opération d'entrée/sortie initié par un processus léger dans un fichier.
CancelWaitableTimer | kernel32.dll | Cette fonction permet de fixer le délai d'attente de l'horloge à un état inactif.
CascadeWindows | user32.dll | Cette fonction permet d'effectuer des cascades de fenêtre spécifié ou de fenêtre enfant dans la fenêtre parent spécifié.
ChangeClipboardChain | user32.dll | Cette fonction permet d'enlever le premier élément de la chaine du visualisateur de presse-papier et de le remplacer par le deuxième élément spécifié.
ChangeDisplaySettingsA | user32.dll | Cette fonction permet de modifier les paramètres du mode d'affichage graphique
ChangeDisplaySettingsW | user32.dll | Cette fonction permet de modifier les paramètres du mode d'affichage graphique avec des paramètres de chaine de caractères étendues (Unicode).
ChangeDisplaySettingsExA | user32.dll | Cette fonction permet de modifier les paramètres du mode d'affichage graphique pour le périphérique d'affichage spécifié.
ChangeDisplaySettingsExW | user32.dll | Cette fonction permet de modifier les paramètres du mode d'affichage graphique pour le périphérique d'affichage spécifié avec des paramètres de chaine de caractères étendues (Unicode).
ChangeMenuA | user32.dll | Cette fonction permet de modifier un élément du menu spécifié.
ChangeMenuW | user32.dll | Cette fonction permet de modifier un élément du menu spécifié avec des paramètres de chaine de caractères étendues (Unicode).
CharLowerA | user32.dll | Cette fonction permet d'effectuer la conversion d'une chaine de caractères spécifié en minuscule.
CharLowerBuffA | user32.dll | Cette fonction permet d'effectuer la conversion des caractères majuscules contenu dans un tampon en caractères minuscule.
CharLowerBuffW | user32.dll | Cette fonction permet d'effectuer la conversion des caractères majuscules contenu dans un tampon en caractères minuscule avec des paramètres de chaine de caractères étendues (Unicode).
CharLowerW | user32.dll | Cette fonction permet d'effectuer la conversion d'une chaine de caractères spécifié en minuscule avec des paramètres de chaine de caractères étendues (Unicode).
CharNextA | user32.dll | Cette fonction permet de retourner un pointeur sur le prochaine caractère contenu dans une chaine de caractères.
CharNextExA | user32.dll | Cette fonction permet de retourner l'adresse du prochaine caractère contenu dans une chaine de caractères.
CharNextW | user32.dll | Cette fonction permet de retourner un pointeur sur le prochaine caractère contenu dans une chaine de caractères avec des paramètres de chaine de caractères étendues (Unicode).
CharPrevA | user32.dll | Cette fonction permet de retourner un pointeur sur le caractère précédent contenu dans une chaine de caractères.
CharPrevExA | user32.dll | Cette fonction permet de retourner l'adresse du caractère précédent contenu dans une chaine de caractères.
CharPrevW | user32.dll | Cette fonction permet de retourner un pointeur sur le caractère précédent contenu dans une chaine de caractères avec des paramètres de chaine de caractères étendues (Unicode).
CharToOemA | user32.dll | Cette fonction permet d'effectuer la transformation d'une chaine de caractères en ensemble de caractères OEM utilisateur.
CharToOemBuffA | user32.dll | Cette fonction permet d'effectuer la transformation d'un nombre spécifique de caractères dans une chaine de caractères d'un ensemble de caractères OEM utilisateur.
CharToOemBuffW | user32.dll | Cette fonction permet d'effectuer la transformation d'un nombre spécifique de caractères dans une chaine de caractères d'un ensemble de caractères OEM utilisateur avec des paramètres de chaine de caractères étendues (Unicode).
CharToOemW | user32.dll | Cette fonction permet d'effectuer la transformation d'une chaine de caractères en ensemble de caractères OEM utilisateur avec des paramètres de chaine de caractères étendues (Unicode).
CharUpperA | user32.dll | Cette fonction permet d'effectuer la conversion d'une chaine de caractères spécifié en majuscule.
CharUpperBuffA | user32.dll | Cette fonction permet d'effectuer la conversion des caractères minuscules contenu dans un tampon en caractères majuscule.
CharUpperBuffW | user32.dll | Cette fonction permet d'effectuer la conversion des caractères minuscules contenu dans un tampon en caractères majuscule avec des paramètres de chaine de caractères étendues (Unicode).
CharUpperW | user32.dll | Cette fonction permet d'effectuer la conversion d'une chaine de caractères spécifié en majuscule avec des paramètres de chaine de caractères étendues (Unicode).
CheckColorsInGamut | gdi32.dll | Cette fonction permet d'indiquer si les valeurs de couleurs spécifiés sont dans la gamme du périphérique spécifié.
CheckDlgButton | user32.dll | Cette fonction permet de fixer ou d'enlever une marque de vérification d'un bouton de contrôle ou de changer l'état d'un contrôle d'arbre de bouton.
CheckMenuItem | user32.dll | Cette fonction permet de fixer ou d'enlever un marque de vérification d'un item de menu dans un menu contextuel.
CheckMenuRadioItem | user32.dll | Cette fonction permet de vérifier l'item de menu spécifié et de fabriquer un item radio.
CheckRadioButton | user32.dll | Cette fonction permet de vérifier ou d'enlever un marque de vérification d'un groupe de bouton radio spécifié.
ChildWindowFromPoint | user32.dll | Cette fonction permet de demander le propriétaire de la fenêtre enfant à l'aide d'une coordonnée spécifié.
ChildWindowFromPointEx | user32.dll | Cette fonction permet de demander lequel des fenêtres enfants, si possible, appartient à la fenêtre parent du point spécifié.
ChooseColorA | comdlg32.dll | Cette fonction permet de lancer une boite de dialogue offrant la possibilité à l'utilisateur de choisir une couleur
ChooseFontA | comdlg32.dll | Cette fonction permet de lancer une boite de dialogue offrant la possibilité à l'utilisateur de choisir une police de caractères
ChoosePixelFormat | gdi32.dll | Cette fonction permet de tenter de faire correspondre à un format de pixel approprié supporté par un périphérique de contexte d'un format de pixel donné spécifié.
Chord | gdi32.dll | Cette fonction permet de dessiner la corde de limite à l'aide d'une intersection d'une ellipse avec le centre d'un rectangle et d'une ligne de segment.
ClearCommBreak | kernel32.dll | Cette fonction permet de restituer les caractères transmis par un périphérique de communications spécifié et place ligne de transmission dans un état non arrêtable.
ClearCommError | kernel32.dll | Cette fonction permet de demander des informations à propos d'erreur de communications et un rapport d'état actuel sur un périphérique de communication.
ClearEventLogA | advapi32.dll | Cette fonction permet d'effacer le journal de bord spécifié et sauvegarde une copie du journal du bord courant dans un fichier si désiré.
ClearEventLogW | advapi32.dll | Cette fonction permet d'effacer le journal de bord spécifié et sauvegarde une copie du journal du bord courant dans un fichier si désiré avec des paramètres de chaine de caractères étendue (Unicode).
ClientToScreen | user32.dll | Cette fonction permet d'effectuer la transformation des coordonnées logique du client en coordonnées physiquement sur l'écran
ClipCursor | user32.dll | Cette fonction permet de définir une fenêtre limitant le déplacement du pointeur de la souris.
CloseClipboard | user32.dll | Cette fonction permet d'indiquer que le traitement avec le presse-papier est terminé et que les autres applications peuvent maintenant avoir accès aux données qu'elle contient.
CloseDesktop | user32.dll | Cette fonction permet de fermer ou d'ouvrir le Handle de l'objet de bureau.
CloseEnhMetaFile | gdi32.dll | Cette fonction permet de fermer un périphérique de contexte de fichier méta étendue et retourne le Handle identifiant un format de fichier méta étendue.
CloseEventLog | advapi32.dll | Cette fonction permet de fermer le fichier de journal de bord d'événement spécifié
CloseFigure | gdi32.dll | Cette fonction permet de fermer une figure dans une spécification de chemin.
CloseHandle | kernel32.dll | Cette fonction permet d'effectuer la fermeture d'un Handle.
CloseMetaFile | gdi32.dll | Cette fonction permet de fermer et de créer le fichier de méta pour pouvoir jouer son contenu.
ClosePrinter | winspool.drv | Cette fonction permet d'indiquer que le traitement avec le tampon d'impression de l'imprimante est terminé.
CloseWindow | user32.dll | Cette fonction permet de minimiser (sans la détruire) la fenêtre spécifié.
CloseWindowStation | user32.dll | Cette fonction permet de fermer un Handle de fenêtre de station ouverte.
CoCreateGuid | ole32.dll | Cette fonction permet de créer un identificateur global unique GUID (Global Unique ID) générer sur une base de 128-bits pouvant être utilisé par exemple pour les identificateurs de classe CLSID.
ColorMatchToTarget | gdi32.dll | Cette fonction permet d'activer ou désactiver le prévisualisation du périphérique de contexte spécifié.
CombineRgn | gdi32.dll | Cette fonction permet de créer une nouvelle région pour combiné deux régions existantes.
CombineTransform | gdi32.dll | Cette fonction permet d'effectuer la concaténation de double espace mondiale vers une transformation d'espace de page.
CommConfigDialogA | kernel32.dll | Cette fonction permet d'afficher une configuration de pilote de fournisseur dans une boite de dialogue.
CommConfigDialogW | kernel32.dll | Cette fonction permet d'afficher une configuration de pilote de fournisseur dans une boite de dialogue avec des paramètres de chaine de caractères étendue (Unicode).
CompareFileTime | kernel32.dll | Cette fonction permet de comparer deux temps de fichier de 64-bits.
CompareStringA | kernel32.dll | Cette fonction permet d'effectuer la comparaison de deux chaines de caractères ASCIZ.
CompareStringW | kernel32.dll | Cette fonction permet d'effectuer la comparaison de deux chaines de caractères Unicode.
ConfigurePortA | winspool.drv | Cette fonction permet de lancer une boite de dialogue offrant la possibilité à l'utilisateur de choisir le port parallèle ou USB d'imprimante
ConnectNamedPipe | kernel32.dll | Cette fonction permet d'activé un nom de tuyau d'un processus serveur en attente pour un processus client de connexion.
ContinueDebugEvent | kernel32.dll | Cette fonction permet d'activer un débogueur pour qu'il continue un processus précédemment rapporter comme un bogue d'événement.
ConvertDefaultLocale | kernel32.dll | Cette fonction permet de convertir une valeur locale spécial par défaut en un identificateur local courant.
ConvertThreadToFiber | kernel32.dll | Cette fonction permet d'effectuer la conversion d'un processus léger vers un fibre.
CopyAcceleratorTableA | user32.dll | Cette fonction permet de copier la table d'accélérateur spécifié.
CopyAcceleratorTableW | user32.dll | Cette fonction permet de copier la table d'accélérateur spécifié avec des paramètres de chaine de caractères étendues (Unicode).
CopyEnhMetaFileA | gdi32.dll | Cette fonction permet de copier le contenu d'un fichier méta de format étendue vers un fichier spécifié.
CopyEnhMetaFileW | gdi32.dll | Cette fonction permet de copier le contenu d'un fichier méta de format étendue vers un fichier spécifié avec des paramètres de chaine de caractères étendues (Unicode).
CopyFileA | kernel32.dll | Cette fonction permet d'effectuer la copie d'un fichier d'un emplacement à un autre emplacement
CopyFileExA | kernel32.dll | Cette fonction permet d'effectuer la copie d'un fichier d'un emplacement à un autre emplacement tout en effectuant un processus d'arrière plan indiquant sa progression.
CopyFileExW | kernel32.dll | Cette fonction permet d'effectuer la copie d'un fichier d'un emplacement à un autre emplacement tout en effectuant un processus d'arrière plan indiquant sa progression avec des paramètres de chaine de caractères étendue (Unicode).
CopyFileW | kernel32.dll | Cette fonction permet d'effectuer la copie d'un fichier d'un emplacement à un autre emplacement avec des paramètres de chaine de caractères étendue (Unicode).
CopyIcon | user32.dll | Cette fonction permet de copier un icône spécifié d'un autre module vers le module courant.
CopyImage | user32.dll | Cette fonction permet de créer une nouvelle image (icône, image ou Bitmap) et de copier les attributs de l'image donnée dans une nouvelle image.
CopyMetaFileA | gdi32.dll | Cette fonction permet de copier le contenu d'un format de méta fichier Windows vers un fichier spécifié.
CopyMetaFileW | gdi32.dll | Cette fonction permet de copier le contenu d'un format de méta fichier Windows vers un fichier spécifié avec des paramètres de chaine de caractères étendues (Unicode).
CopyRect | user32.dll | Cette fonction permet d'effectuer la copie des coordonnées d'un rectangle dans un autre rectangle.
CopySid | advapi32.dll | Cette fonction permet de copier l'identificateur de sécurité (SID) dans un tampon spécifié.
CountClipboardFormats | user32.dll | Cette fonction permet de demander le nombre de différentes données de formats courant que contient le presse-papier.
CreateAcceleratorTableA | user32.dll | Cette fonction permet de créer une table d'accélérateur.
CreateAcceleratorTableW | user32.dll | Cette fonction permet de créer une table d'accélérateur avec des paramètres de chaine de caractères étendues (Unicode).
CreateBitmap | gdi32.dll | Cette fonction permet de créer un périphérique de Bitmap en mémoire avec la largeur, hauteur et la palette de bits spécifié.
CreateBitmapIndirect | gdi32.dll | Cette fonction permet de créer un Bitmap avec la largeur, la hauteur et la palette de bits spécifié dans une structure BITMAP.
CreateBrushIndirect | gdi32.dll | Cette fonction permet de créer une brosse avec le style, la couleur et la palette spécifié dans la structure «LOGBRUSH».
CreateCaret | user32.dll | Cette fonction permet de créer un nouveau signe pour le curseur texte et associe le propriétaire à la fenêtre spécifié.
CreateColorSpaceA | gdi32.dll | Cette fonction permet de créer un espace de couleur logique.
CreateColorSpaceW | gdi32.dll | Cette fonction permet de créer un espace de couleur logique avec des paramètres de chaine de caractères étendues (Unicode).
CreateCompatibleBitmap | gdi32.dll | Cette fonction permet de créer un Bitmap compatible avec le périphérique spécifié.
CreateCompatibleDC | gdi32.dll | Cette fonction permet de créer un contexte de périphérique mémoire compatible avec le périphérique spécifié.
CreateConsoleScreenBuffer | kernel32.dll | Cette fonction permet de créer un tampon de console écran et de retourner un identificateur Handle associée à celui-ci.
CreateCursor | user32.dll | Cette fonction permet d'effectuer la création d'une nouvelle image de pointeur de souris
CreateDCA | gdi32.dll | Cette fonction permet d'effectuer la création d'un objet de contexte (DC)
CreateDCW | gdi32.dll | Cette fonction permet d'effectuer la création d'un objet de contexte (DC) avec des paramètres de chaines de caractères étendues (Unicode).
CreateDesktopA | user32.dll | Cette fonction permet de créer un nouveau bureau dans une fenêtre de station associé avec le processus appelant.
CreateDesktopW | user32.dll | Cette fonction permet de créer un nouveau bureau dans une fenêtre de station associé avec le processus appelant avec des paramètres de chaine de caractères étendues (Unicode).
CreateDialogIndirectParamA | user32.dll | Cette fonction permet de créer un modèle de boite de dialogue pour un gabarit de boite de dialogue en mémoire et après son affichage, la fonction passe une valeur d'application à la procédure de boite de dialogue avec les paramètres spécifié du message «WM_INITDIALOG».
CreateDialogIndirectParamW | user32.dll | Cette fonction permet de créer un modèle de boite de dialogue pour un gabarit de boite de dialogue en mémoire et après son affichage, la fonction passe une valeur d'application à la procédure de boite de dialogue avec les paramètres spécifié du message «WM_INITDIALOG» avec des paramètres de chaine de caractères étendues (Unicode).
CreateDialogParamA | user32.dll | Cette fonction permet de créer un modèle de boite de dialogue pour une ressource de gabarit de boite de dialogue et après son affichage, la fonction passe une valeur d'application à la procédure de boite de dialogue avec les paramètres spécifié du message «WM_INITDIALOG».
CreateDialogParamW | user32.dll | Cette fonction permet de créer un modèle de boite de dialogue pour une ressource de gabarit de boite de dialogue et après son affichage, la fonction passe une valeur d'application à la procédure de boite de dialogue avec les paramètres spécifié du message «WM_INITDIALOG» avec des paramètres de chaine de caractères étendues (Unicode).
CreateDIBPatternBrush | gdi32.dll | Cette fonction permet de créer une brosse avec la palette spécifié par un périphérique de Bitmap indépendant (DIB).
CreateDIBPatternBrushPt | gdi32.dll | Cette fonction permet de créer une brosse logique avec la palette spécifié par un périphérique de Bitmap indépendant (DIB).
CreateDIBSection | gdi32.dll | Cette fonction permet de créer un Bitmap de périphérique indépendant (DIB) avec les applications pouvant y être écrit directement.
CreateDIBitmap | gdi32.dll | Cette fonction permet de créer un périphérique mémoire spécifié pour un périphérique de Bitmap indépendant (DIB) spécifié et un ensemble de bits optionnel pour le Bitmap.
CreateDirectoryA | kernel32.dll | Cette fonction permet d'effectuer la création d'un répertoire
CreateDirectoryW | kernel32.dll | Cette fonction permet d'effectuer la création d'un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
CreateDirectoryExA | kernel32.dll | Cette fonction permet d'effectuer la création d'un répertoire étendue
CreateDirectoryExW | kernel32.dll | Cette fonction permet d'effectuer la création d'un répertoire étendue avec des paramètres de chaine de caractères étendue (Unicode).
CreateDirectoryTransactedA | kernel32.dll | Cette fonction permet d'effectuer la création d'un répertoire dans une opération de transaction
CreateDirectoryTransactedW | kernel32.dll | Cette fonction permet d'effectuer la création d'un répertoire dans une opération de transaction avec des paramètres de chaine de caractères étendue (Unicode).
CreateDiscardableBitmap | gdi32.dll | Cette fonction permet de créer un Bitmap compatible avec un périphérique spécifié.
CreateEllipticRgn | gdi32.dll | Cette fonction permet de créer une région elliptique.
CreateEllipticRgnIndirect | gdi32.dll | Cette fonction permet de créer une région elliptique à l'aide d'une structure de données.
CreateEnhMetaFileA | gdi32.dll | Cette fonction permet de créer un contexte de périphérique pour un méta fichier de format étendue.
CreateEnhMetaFileW | gdi32.dll | Cette fonction permet de créer un contexte de périphérique pour un méta fichier de format étendue avec des paramètres de chaine de caractères étendues (Unicode).
CreateEventA | kernel32.dll | Cette fonction permet de créer un objet d'événement nommé ou non-nommé.
CreateEventW | kernel32.dll | Cette fonction permet de créer un objet d'événement nommé ou non-nommé avec des paramètres de chaine de caractères étendue (Unicode).
CreateFiber | kernel32.dll | Cette fonction permet d'allouer un objet de fibre, en lui attribuant une pile, et en fixant le début de l'exécutant à l'adresse de début spécifié.
CreateFileA | kernel32.dll | Cette fonction permet d'effectuer la création ou l'ouverture d'un fichier ou d'un périphérique
CreateFileW | kernel32.dll | Cette fonction permet d'effectuer la création ou l'ouverture d'un fichier ou d'un périphérique avec des paramètres de chaine de caractères étendue (Unicode).
CreateFileMappingA | kernel32.dll | Cette fonction permet de créer un objet mapping, nommé ou non-nommé, pour un fichier spécifié.
CreateFileMappingW | kernel32.dll | Cette fonction permet de créer un objet mapping, nommé ou non-nommé, pour un fichier spécifié avec des paramètres de chaine de caractères étendue (Unicode).
CreateFontA | gdi32.dll | Cette fonction permet d'effectuer la création d'une police de caractères logique avec les caractéristiques spécifiés.
CreateFontIndirectA | gdi32.dll | Cette fonction permet de créer une police de caractères logique avec les caractéristiques spécifié dans la structure spécifié.
CreateFontIndirectW | gdi32.dll | Cette fonction permet de créer une police de caractères logique avec les caractéristiques spécifié dans la structure spécifié avec les paramètres de chaines de caractères étendues (Unicode).
CreateFontW | gdi32.dll | Cette fonction permet d'effectuer la création d'une police de caractères logique avec les caractéristiques spécifiés avec les paramètres de chaine de caractères étendues (Unicode).
CreateHalftonePalette | gdi32.dll | Cette fonction permet de créer une demi-teinte d'une palette pour le périphérique de contexte spécifié.
CreateHatchBrush | gdi32.dll | Cette fonction permet de créer une brosse logique spécifiant un motif de hachure et de couleur.
CreateICA | gdi32.dll | Cette fonction permet de créer une information de contexte pour un périphérique spécifié.
CreateICW | gdi32.dll | Cette fonction permet de créer une information de contexte pour un périphérique spécifié avec des paramètres de chaines de caractères étendues (Unicode).
CreateIcon | user32.dll | Cette fonction permet d'effectuer la création d'une icône
CreateIconFromResource | user32.dll | Cette fonction permet d'effectuer la création d'un icône ou d'un curseur à partir de bits de ressources décrit dans l'icône.
CreateIconFromResourceEx | user32.dll | Cette fonction permet d'effectuer la création d'un icône ou d'un curseur à partir de bits de ressources décrit dans l'icône avec des options complémentaires.
CreateIconIndirect | user32.dll | Cette fonction permet d'effectuer la création d'un icône ou d'un curseur à partir d'une structure de données.
CreateMailslotA | kernel32.dll | Cette fonction permet de créer une slot de courriel avec un nom spécifié et retourne un identificateur Handle associé à celle-ci.
CreateMailslotW | kernel32.dll | Cette fonction permet de créer une slot de courriel avec un nom spécifié et retourne un identificateur Handle associé à celle-ci avec des paramètres de chaine de caractères étendue (Unicode).
CreateMDIWindowA | user32.dll | Cette fonction permet d'effectuer la création de fenêtre enfant MDI (Interface de multiple document).
CreateMDIWindowW | user32.dll | Cette fonction permet d'effectuer la création de fenêtre enfant MDI (Interface de multiple document) avec des paramètres de chaine de caractères étendues (Unicode).
CreateMenu | user32.dll | Cette fonction permet d'effectuer la création d'un menu.
CreateMetaFileA | gdi32.dll | Cette fonction permet de créer un périphérique de contexte pour un format de fichier méta Windows.
CreateMetaFileW | gdi32.dll | Cette fonction permet de créer un périphérique de contexte pour un format de fichier méta Windows avec des paramètres de chaines de caractères étendues (Unicode).
CreateMutexA | kernel32.dll | Cette fonction permet de créer un objet Mutex nommé ou non-nommé.
CreateMutexW | kernel32.dll | Cette fonction permet de créer un objet Mutex nommé ou non-nommé avec des paramètres de chaine de caractères étendue (Unicode).
CreateNamedPipeA | kernel32.dll | Cette fonction permet de créer un tuyau avec un instance de nom spécifié et de retourner un identificateur Handle associé à celle-ci.
CreateNamedPipeW | kernel32.dll | Cette fonction permet de créer un tuyau avec un instance de nom spécifié et de retourner un identificateur Handle associé à celle-ci avec des paramètres de chaine de caractères étendue (Unicode).
CreatePalette | gdi32.dll | Cette fonction permet d'effectuer la création d'une palette logique.
CreatePatternBrush | gdi32.dll | Cette fonction permet d'effectuer la création d'une brosse logique avec la palette Bitmap spécifié.
CreatePen | gdi32.dll | Cette fonction permet d'effectuer la création d'un crayon logique avec le style, la largeur et la couleur spécifié.
CreatePenIndirect | gdi32.dll | Cette fonction permet d'effectuer la création d'un crayon logique avec le style, la largeur et la couleur à l'aide la structure de données spécifié.
CreatePipe | kernel32.dll | Cette fonction permet de créer un tuyau anonyme et de retourner un identificateur Handle attribué en lecture et écriture pour celle-ci.
CreatePolyPolygonRgn | gdi32.dll | Cette fonction permet d'effectuer la création d'une région contenant une série de fermeture de polygone.
CreatePolygonRgn | gdi32.dll | Cette fonction permet d'effectuer la création d'une région en forme de polygone.
CreatePopupMenu | user32.dll | Cette fonction permet d'effectuer la création d'un menu contextuel
CreatePrivateObjectSecurity | advapi32.dll | Cette fonction permet d'alloué et d'initialiser un descripteur de sécurité relatif à l'objet pour un un serveur d'objet protégé.
CreateProcessA | kernel32.dll | Cette fonction permet de créer un nouveau processus et de le fixer comme processus léger primaire.
CreateProcessW | kernel32.dll | Cette fonction permet de créer un nouveau processus et de le fixer comme processus léger primaire avec des paramètres de chaine de caractères étendue (Unicode).
CreateProcessAsUserA | advapi32.dll | Cette fonction permet de créer un nouveau processus et de le mettre comme processus primaire.
CreateProcessAsUserW | advapi32.dll | Cette fonction permet de créer un nouveau processus et de le mettre comme processus primaire avec des paramètres de chaine de caractères étendue (Unicode).
CreateRectRgn | gdi32.dll | Cette fonction permet d'effectuer la création d'une région rectangulaire.
CreateRectRgnIndirect | gdi32.dll | Cette fonction permet d'effectuer la création d'une région rectangulaire à l'aide d'une structure de données.
CreateRemoteThread | kernel32.dll | Cette fonction permet de créer un processus léger exécuté dans l'espace d'une adresse d'un autre processus.
CreateRoundRectRgn | gdi32.dll | Cette fonction permet d'effectuer la création d'une région rectangulaire avec les coins arrondies.
CreateScalableFontResourceA | gdi32.dll | Cette fonction permet de créer un fichier de ressource de police de caractères avec une police de caractères vectorielle.
CreateScalableFontResourceW | gdi32.dll | Cette fonction permet de créer un fichier de ressource de police de caractères avec une police de caractères vectorielle avec des paramètres de chaine de caractères étendue (Unicode).
CreateSemaphoreA | kernel32.dll | Cette fonction permet de créer un objet de sémaphore nommé ou non-nommé.
CreateSemaphoreW | kernel32.dll | Cette fonction permet de créer un objet de sémaphore nommé ou non-nommé avec des paramètres de chaine de caractères étendue (Unicode).
CreateSolidBrush | gdi32.dll | Cette fonction permet d'effectuer la création d'une brosse logique avec la couleur et le motif solide spécifié.
CreateStatusWindowA | comctl32.dll | Cette fonction permet d'effectuer la création d'une barre d'état dans le bas d'une fenêtre d'application
CreateTapePartition | kernel32.dll | Cette fonction permet de reformatée une unité de sauvegarde de bande magnétique (Tape Backup).
CreateToolhelp32Snapshot | kernel32.dll | Cette fonction permet d'effectuer une capture de l'écran sous forme d'un Bitmap
CreateThread | kernel32.dll | Cette fonction permet de créer un processus pour exécuter un processus appelant dans un espace d'adressage.
CreateWaitableTimerA | kernel32.dll | Cette fonction permet d'effectuer la création d'une horloge de délai d'attente.
CreateWaitableTimerW | kernel32.dll | Cette fonction permet d'effectuer la création d'une horloge de délai d'attente avec des paramètres de chaine de caractères étendue (Unicode).
CreateWindowExA | user32.dll | Cette fonction permet d'effectuer la création d'une sous-fenêtre (PopUp).
CreateWindowExW | user32.dll | Cette fonction permet d'effectuer la création d'une sous-fenêtre (PopUp) avec des paramètres de chaine de caractères étendues (Unicode).
CreateWindowStationA | user32.dll | Cette fonction permet d'effectuer la création d'un objet de fenêtre de station.
CreateWindowStationW | user32.dll | Cette fonction permet d'effectuer la création d'un objet de fenêtre de station avec des paramètres de chaine de caractères étendues (Unicode).
DdeSetQualityOfService | user32.dll | Cette fonction permet de spécifier le service de qualité (QoS) des applications d'échanges de données dynamique brute (DDE) désiré pour de future initialisation de conversion DDE.
DebugActiveProcess | kernel32.dll | Cette fonction permet d'allouer une débogueur à attaché avec un processus actif
DebugBreak | kernel32.dll | Cette fonction permet de provoqué une exception sur un point d'arrêt dans le processus courant.
DefDlgProcA | user32.dll | Cette fonction permet d'effectuer le traitement de processus de fenêtre de message par défaut.
DefDlgProcW | user32.dll | Cette fonction permet d'effectuer le traitement de processus de fenêtre de message par défaut avec des paramètres de chaine de caractères étendues (Unicode).
DeferWindowPos | user32.dll | Cette fonction permet de mettre à jour la structure de positionnement d'une fenêtre.
DefFrameProcA | user32.dll | Cette fonction permet d'effectuer le processus de message par défaut du cadre d'une fenêtre MDI.
DefFrameProcW | user32.dll | Cette fonction permet d'effectuer le processus de message par défaut du cadre d'une fenêtre MDI avec des paramètres de chaine de caractères étendues (Unicode).
DefineDosDeviceA | kernel32.dll | Cette fonction permet de définir, redéfinir ou supprimer un nom de périphérique DOS.
DefineDosDeviceW | kernel32.dll | Cette fonction permet de définir, redéfinir ou supprimer un nom de périphérique DOS avec des paramètres de chaine de caractères étendue (Unicode).
DefMDIChildProcA | user32.dll | Cette fonction permet de définir le processus de message de la fenêtre enfant MDI.
DefMDIChildProcW | user32.dll | Cette fonction permet de définir le processus de message de la fenêtre enfant MDI avec des paramètres de chaine de caractères étendues (Unicode).
DefWindowProcA | user32.dll | Cette fonction permet de créer un événement produit par défaut lorsqu'une action est effectuer dans la fenêtre.
DefWindowProcW | user32.dll | Cette fonction permet de créer un événement produit par défaut lorsqu'une action est effectué dans la fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
DeleteAce | advapi32.dll | Cette fonction permet d'effacer une entrée de contrôle d'accès (ACE) d'une liste de contrôle d'accès (ACL).
DeleteAtom | kernel32.dll | Cette fonction permet de décrémenter le compteur de référence de chaine de caractères d'Atom local.
DeleteColorSpace | gdi32.dll | Cette fonction permet de supprimer l'espace de couleur spécifié et libérer tous les ressources internes associé avec celui-ci.
DeleteCriticalSection | kernel32.dll | Cette fonction permet de terminer et restituer tous les ressources associé à l'objet de section critique.
DeleteDC | gdi32.dll | Cette fonction permet d'effectuer la suppression d'un périphérique de contexte (DC).
DeleteEnhMetaFile | gdi32.dll | Cette fonction permet de supprimer le format étendue du fichier méta ou le Handle du fichier méta de format étendue.
DeleteFiber | kernel32.dll | Cette fonction permet de supprimer une fibre existante.
DeleteFileA | kernel32.dll | Cette fonction permet de supprimer un fichier existant.
DeleteFileW | kernel32.dll | Cette fonction permet de supprimer un fichier existant avec des paramètres de chaine de caractères étendue (Unicode).
DeleteMenu | user32.dll | Cette fonction permet de supprimer un item de menu.
DeleteMetaFile | gdi32.dll | Cette fonction permet de supprimer un fichier de méta de format Windows ou le Handle d'un fichier méta de format Windows.
DeleteObject | gdi32.dll | Cette fonction permet de supprimer un crayon, une brosse, une police de caractères, un Bitmap ou une palette logique et d'ainsi libérer les ressources systèmes associé avec cette objet.
DeletePrinter | winspool.drv | Cette fonction permet de supprimer un objet d'imprimante.
DeregisterEventSource | advapi32.dll | Cette fonction permet de fermer un identificateur Handle d'enregistrement d'événement retourner par une fonction «RegisterEventSource».
DescribePixelFormat | gdi32.dll | Cette fonction permet de demander les informations à propos du format d'un pixel spécifié d'un périphérique spécifié.
DestroyAcceleratorTable | user32.dll | Cette fonction permet de détruire la table d'accélérateur.
DestroyCaret | user32.dll | Cette fonction permet de supprimer le caret courant.
DestroyCursor | user32.dll | Cette fonction permet de supprimer une image de pointeur de souris
DestroyIcon | user32.dll | Cette fonction permet de supprimer une icône
DestroyMenu | user32.dll | Cette fonction permet de supprimer un menu contextuel
DestroyPrivateObjectSecurity | advapi32.dll | Cette fonction permet d'effacer un descripteur de sécurité d'un objet serveur protégé.
DestroyWindow | user32.dll | Cette fonction permet de supprimer une fenêtre
DeviceCapabilitiesExA | gdi32.dll | Cette fonction permet de demander la compatibilité pour le pilote d'imprimante spécifié.
DeviceCapabilitiesExW | gdi32.dll | Cette fonction permet de demander la compatibilité pour le pilote d'imprimante spécifié avec des paramètres de chaine de caractères étendues (Unicode).
DeviceIoControl | kernel32.dll | Cette fonction permet d'envoyer des codes de contrôles directement à un pilote de périphérique.
DialogBoxIndirectParamA | user32.dll | Cette fonction permet de créer une boite de dialogue modèle à l'aide d'un gabarit en mémoire et des paramètres spécifiés.
DialogBoxIndirectParamW | user32.dll | Cette fonction permet de créer une boite de dialogue modèle à l'aide d'un gabarit en mémoire et des paramètres spécifiés avec des paramètres de chaine de caractères étendues (Unicode).
DialogBoxParamA | user32.dll | Cette fonction permet de créer une boite de dialogue modèle et des paramètres spécifiés.
DialogBoxParamW | user32.dll | Cette fonction permet de créer une boite de dialogue modèle et des paramètres spécifiés avec des paramètres de chaine de caractères étendues (Unicode).
DisableThreadLibraryCalls | kernel32.dll | Cette fonction permet de désactiver les avertissements «DLL_THREAD_ATTACH» et «DLL_THREAD_DETACH» des bibliothèques de lien dynamique (DLL) spécifié.
DisconnectNamedPipe | kernel32.dll | Cette fonction permet de déconnecter le serveur de fin de tuyau nommé pour un processus client.
DiskCopyRunDll | diskcopy.dll | Cette fonction permet de lancer une boite de dialogue offrant la possibilité d'effectuer une copie d'unité de disquette
DispatchMessageA | user32.dll | Cette fonction permet de redistribuer le messages de fenêtre.
DispatchMessageW | user32.dll | Cette fonction permet de redistribuer le messages de fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
DlgDirListA | user32.dll | Cette fonction permet de remplir une boite de dialogue avec une liste de fichiers et de répertoires.
DlgDirListW | user32.dll | Cette fonction permet de remplir une boite de dialogue avec une liste de fichiers et de répertoires avec des paramètres de chaine de caractères étendues (Unicode).
DlgDirListComboBoxA | user32.dll | Cette fonction permet de remplir une boite combinée (Combo Box) avec une liste de fichiers et de répertoires.
DlgDirListComboBoxW | user32.dll | Cette fonction permet de remplir une boite combinée (Combo Box) avec une liste de fichiers et de répertoires avec des paramètres de chaine de caractères étendues (Unicode).
DlgDirSelectComboBoxExA | user32.dll | Cette fonction permet de demander la sélection courante d'une boite combinée remplit par la fonction DlgDirListComboBox.
DlgDirSelectComboBoxExW | user32.dll | Cette fonction permet de demander la sélection courante d'une boite combinée remplit par la fonction DlgDirListComboBox avec des paramètres de chaine de caractères étendues (Unicode).
DlgDirSelectExA | user32.dll | Cette fonction permet de demander la sélection courante étendue d'une liste de boite.
DlgDirSelectExW | user32.dll | Cette fonction permet de demander la sélection courante étendue d'une liste de boite avec des paramètres de chaine de caractères étendues (Unicode).
DllGetVersion | shell32.dll | Cette fonction permet de demander les informations de la version de DLL
DosDateTimeToFileTime | kernel32.dll | Cette fonction permet de convertir la valeur d'une date et d'une heure du DOS en un temps fichier de 64 bits.
DPtoLP | gdi32.dll | Cette fonction permet d'effectuer la conversion des coordonnées d'un périphérique en coordonnées logique.
DragAcceptFiles | shell32.dll | Cette fonction permet de fixer l'état du drapeau indiquant si la fenêtre accepte les fichiers glissées
DragDetect | user32.dll | Cette fonction permet de déterminer quand une fonction de glisser-déposer (drag and drop) est mis en place.
DragObject | user32.dll | Cette fonction permet d'intéger une composante serveur de glisser-déposer (drag and drop).
DragFinish | shell32.dll | Cette fonction permet de restituer la mémoire employé pour le transfert des noms de fichiers vers une fenêtre d'application
DragQueryFile | shell32.dll | Cette fonction permet de demander les noms de fichiers lors d'un transfert des noms de fichiers vers une fenêtre d'application
DrawAnimatedRects | user32.dll | Cette fonction permet de dessiner un cadre de rectangle et d'animer l'icône ouvert.
DrawCaption | user32.dll | Cette fonction permet de dessiner une fenêtre de légende.
DrawEdge | user32.dll | Cette fonction permet de dessiner une ou plusieurs bordures d'un rectangle.
DrawEscape | gdi32.dll | Cette fonction permet d'accéder à la compatibilité de dessinage de l'affichage d'un vidéo n'étant pas directement disponible par le GDI (Graphics Device Interface).
DrawFocusRect | user32.dll | Cette fonction permet de dessiner un rectangle avec un style indiquant qu'il est focusé.
DrawFrameControl | user32.dll | Cette fonction permet de dessiner un cadre de contrôle pour le type et le style spécifié.
DrawIcon | user32.dll | Cette fonction permet d'afficher une icône dans la fenêtre d'application du contexte de l'objet
DrawIconEx | user32.dll | Cette fonction permet d'afficher un icône ou un curseur dans une région client d'une fenêtre d'un périphérique de contexte donnée, d'effectuer des opérations de traitement de trame spécifié et d'étirement ou de compression de l'icône ou le curseur spécifié.
DrawMenuBar | user32.dll | Cette fonction permet de réafficher la barre de menu de la fenêtre d'application.
DrawStateA | user32.dll | Cette fonction permet d'afficher une image et d'appliquer un effet visuel indiquant son état, laquelle peut être désactiver ou un état par défaut.
DrawStateW | user32.dll | Cette fonction permet d'afficher une image et d'appliquer un effet visuel indiquant son état, laquelle peut être désactiver ou un état par défaut avec des paramètres de chaine de caractères étendues (Unicode).
DrawTextA | user32.dll | Cette fonction permet de dessiner le texte formaté dans le rectangle spécifié.
DrawTextW | user32.dll | Cette fonction permet de dessiner le texte formaté dans le rectangle spécifié avec des paramètres de chaine de caractères étendues (Unicode).
DrawTextExA | user32.dll | Cette fonction permet de dessiner le texte formaté dans le rectangle spécifié avec des paramètres supplémentaires.
DrawTextExW | user32.dll | Cette fonction permet de dessiner le texte formaté dans le rectangle spécifié avec des paramètres supplémentaires et des chaines de caractères étendues (Unicode).
DuplicateHandle | kernel32.dll | Cette fonction permet de dupliquer un objet d'identificateur Handle existant.
DuplicateIcon | shell32.dll | Cette fonction permet d'effectuer la création d'un nouvel icône identique à une autre icône spécifié.
DuplicateToken | advapi32.dll | Cette fonction permet de créer un nouvel accès de jeton dupliqué sur un autre jeton déjà existant.
DuplicateTokenEx | advapi32.dll | Cette fonction permet d'effectuer la conversion d'un jeton spécifié par un jeton principal.
DvdLauncher | storprop.dll | Cette fonction permet de vérifier si la région que contient le DVD correspond avec celle du système d'exploitation.
Ellipse | gdi32.dll | Cette fonction permet d'effectuer l'afficher d'une ellipse (forme d'ovale).
EmptyClipboard | user32.dll | Cette fonction permet de vider complètement le tampon du presse-papier.
EnableMenuItem | user32.dll | Cette fonction permet d'activer ou de désactiver un item de menu déroulant.
EnableScrollBar | user32.dll | Cette fonction permet d'activer ou de désactiver les barres de défilement dans une fenêtre d'application.
EnableWindow | user32.dll | Cette fonction permet d'activer ou de désactiver les événements clavier et souris et les contrôles dans une fenêtre d'application.
EndDeferWindowPos | user32.dll | Cette fonction permet d'effectuer la simulation de mise-à-jour de position et de taille d'une ou plusieurs fenêtres dans un simple cycle de rafraichissement d'écran.
EndDialog | user32.dll | Cette fonction permet de cacher un modèle de boite de dialogue.
EndDoc | gdi32.dll | Cette fonction permet d'indiquer que l'application a terminé d'envoyer des données au tampon d'impression de l'imprimante.
EndPage | gdi32.dll | Cette fonction permet d'indiquer que l'application a terminé d'envoyer une page de données au tampon d'impression de l'imprimante.
EndPaint | user32.dll | Cette fonction permet de marquer la fin du traitement de peinture d'une fenêtre spécifié.
EndPath | gdi32.dll | Cette fonction permet de fermer une braquette de chemin et sélectionne le chemin définit par la braquette dans le périphérique de contexte (DC) spécifié.
EndUpdateResourceA | kernel32.dll | Cette fonction permet de terminer la mise-à-jour d'une ressource d'un fichier exécutable.
EndUpdateResourceW | kernel32.dll | Cette fonction permet de terminer la mise-à-jour d'une ressource d'un fichier exécutable avec des paramètres de chaine de caractères étendue (Unicode).
EnterCriticalSection | kernel32.dll | Cette fonction permet d'attendre après un propriétaire d'objet de section critique spécifié.
EnumCalendarInfoA | kernel32.dll | Cette fonction permet d'énumérer des informations de calendrier d'une région local spécifié
EnumCalendarInfoW | kernel32.dll | Cette fonction permet d'énumérer des informations de calendrier d'une région local spécifié avec des paramètres de chaine de caractères étendue (Unicode).
EnumChildWindows | user32.dll | Cette fonction permet d'énumérer les fenêtres enfants de la fenêtre parent en passant le Handle de chaque fenêtre enfant avec une fonction d'application utilisateur.
EnumClipboardFormats | user32.dll | Cette fonction permet de retourner les formats de presse-papier disponibles.
EnumDateFormatsA | kernel32.dll | Cette fonction permet d'énumérer le format de la date courte ou longue disponible pour la région locale.
EnumDateFormatsW | kernel32.dll | Cette fonction permet d'énumérer le format de la date courte ou longue disponible pour la région locale avec des paramètres de chaine de caractères étendue (Unicode).
EnumDesktopsA | user32.dll | Cette fonction permet de demander l'énumération de tous les bureaux d'une fenêtre de travail associé avec un processus appelant.
EnumDesktopsW | user32.dll | Cette fonction permet de demander l'énumération de tous les bureaux d'une fenêtre de travail associé avec un processus appelant avec des paramètres de chaine de caractères étendues (Unicode).
EnumDesktopWindows | user32.dll | Cette fonction permet de demander l'énumération de tous les bureaux passé par le Handle de chaque fenêtre, par l'entremise d'une fonction utilisateur.
EnumDisplaySettingsA | user32.dll | Cette fonction permet de demander des informations sur le système d'affichage.
EnumDisplaySettingsW | user32.dll | Cette fonction permet de demander des informations sur le système d'affichage avec des paramètres de chaine de caractères étendues (Unicode).
EnumEnhMetaFile | gdi32.dll | Cette fonction permet d'énumérer les enregistrements d'un format étendue d'un méta fichier afin de demander chaques enregistrements et de les passés par une fonction utilisateur.
EnumFontFamiliesA | gdi32.dll | Cette fonction permet d'énumérer les polices de caractères d'une famille de police de caractères spécifié étant disponible pour un périphérique spécifié.
EnumFontFamiliesW | gdi32.dll | Cette fonction permet d'énumérer les polices de caractères d'une famille de police de caractères spécifié étant disponible pour un périphérique spécifié avec des paramètres de chaine de caractères étendues (Unicode).
EnumFontFamiliesExA | gdi32.dll | Cette fonction permet d'énumérer toutes les polices de caractères système correspondant aux caractéristiques de polices de caractères spécifié par une structure.
EnumFontFamiliesExW | gdi32.dll | Cette fonction permet d'énumérer toutes les polices de caractères système correspondant aux caractéristiques de polices de caractères spécifié par une structure avec des paramètres de chaine de caractères étendues (Unicode).
EnumFontsA | gdi32.dll | Cette fonction permet d'énumérer les polices de caractères disponibles pour le périphérique spécifié.
EnumFontsW | gdi32.dll | Cette fonction permet d'énumérer les polices de caractères disponibles pour le périphérique spécifié avec des paramètres de chaine de caractères étendues (Unicode).
EnumICMProfilesA | gdi32.dll | Cette fonction permet d'énumérer les différents profiles de couleurs étant supporté par le système pour le périphérique de contexte spécifié.
EnumICMProfilesW | gdi32.dll | Cette fonction permet d'énumérer les différents profiles de couleurs étant supporté par le système pour le périphérique de contexte spécifié avec des paramètres de chaine de caractères étendues (Unicode).
EnumJobsA | winspool.drv | Cette fonction permet de définir les travaux d'impressions d'une imprimante.
EnumMetaFile | gdi32.dll | Cette fonction permet de demander d'énumérer les enregistrements de fichier méta de format Windows en utilisant une fonction d'application utilisateur.
EnumObjects | gdi32.dll | Cette fonction permet d'énumérer les crayons et les brosses disponibles pour le périphérique de contexte spécifié.
EnumPortsA | winspool.drv | Cette fonction permet de demander les ports d'impressions d'imprimante disponible.
EnumPrintersA | winspool.drv | Cette fonction permet de demander des informations sur une imprimante.
EnumPropsA | user32.dll | Cette fonction permet d'effectuer le passage de la liste des entrées de propriétés par l'intermédiaire d'une fonction utilisateur.
EnumPropsExA | user32.dll | Cette fonction permet d'effectuer le passage de la liste des entrées de propriétés par l'intermédiaire d'une fonction utilisateur avec des paramètres supplémentaires.
EnumPropsExW | user32.dll | Cette fonction permet d'effectuer le passage de la liste des entrées de propriétés par l'intermédiaire d'une fonction utilisateur avec des paramètres supplémentaires et des chaines de caractères étendues (Unicode).
EnumPropsW | user32.dll | Cette fonction permet d'effectuer le passage de la liste des entrées de propriétés par l'intermédiaire d'une fonction utilisateur avec des paramètres de chaine de caractères étendues (Unicode).
EnumResourceLanguagesA | kernel32.dll | Cette fonction permet de rechercher un module pour chaque ressource d'un type spécifié et de passé le langage pour chaque ressource trouvé dans une fonction définie en arrière plan.
EnumResourceLanguagesW | kernel32.dll | Cette fonction permet de rechercher un module pour chaque ressource d'un type spécifié et de passé le langage pour chaque ressource trouvé dans une fonction définie en arrière plan avec des paramètres de chaine de caractères étendue (Unicode).
EnumResourceNamesA | kernel32.dll | Cette fonction permet de rechercher un module pour chaque ressource d'un type spécifié et de passé le langage pour chaque ressource trouvé dans une fonction d'application définie en arrière plan.
EnumResourceNamesW | kernel32.dll | Cette fonction permet de rechercher un module pour chaque ressource d'un type spécifié et de passé le langage pour chaque ressource trouvé dans une fonction d'application définie en arrière plan avec des paramètres de chaine de caractères étendue (Unicode).
EnumResourceTypesA | kernel32.dll | Cette fonction permet de rechercher un module pour une ressource et de passé chaque type de ressource dans une fonction d'application définie en arrière plan.
EnumResourceTypesW | kernel32.dll | Cette fonction permet de rechercher un module pour une ressource et de passé chaque type de ressource dans une fonction d'application définie en arrière plan avec des paramètres de chaine de caractères étendue (Unicode).
EnumSystemCodePagesA | kernel32.dll | Cette fonction permet d'énumérer un code de page installé ou supporté par le système d'exploitation.
EnumSystemCodePagesW | kernel32.dll | Cette fonction permet d'énumérer un code de page installé ou supporté par le système d'exploitation avec des paramètres de chaine de caractères étendue (Unicode).
EnumSystemLocalesA | kernel32.dll | Cette fonction permet d'énumérer la région locale installé ou supporté par le système d'exploitation.
EnumSystemLocalesW | kernel32.dll | Cette fonction permet d'énumérer la région locale installé ou supporté par le système d'exploitation avec des paramètres de chaine de caractères étendue (Unicode).
EnumTimeFormatsA | kernel32.dll | Cette fonction permet d'énumérer le format de temps disponible pour la région locale.
EnumTimeFormatsW | kernel32.dll | Cette fonction permet d'énumérer le format de temps disponible pour la région locale avec des paramètres de chaine de caractères étendue (Unicode).
EnumThreadWindows | user32.dll | Cette fonction permet d'effectuer l'énumération de toutes les fenêtres non-enfant associé avec un processus par passage d'un Handle pour chaque fenêtre avec une fonction d'application utilisateur.
EnumWindowStationsA | user32.dll | Cette fonction permet d'effectuer l'énumération de toutes les fenêtres de station dans le système par passage du nom pour chaque fenêtre de station avec une fonction d'application utilisateur.
EnumWindowStationsW | user32.dll | Cette fonction permet d'effectuer l'énumération de toutes les fenêtres de station dans le système par passage du nom pour chaque fenêtre de station avec une fonction d'application utilisateur et des paramètres de chaine de caractères étendues (Unicode).
EnumWindows | user32.dll | Cette fonction permet d'effectuer le passage des fenêtres parent par l'intermédiaire d'une fonction utilisateur.
EqualPrefixSid | advapi32.dll | Cette fonction permet de vérifie sur les valeurs de deux préfixes SID (identificateur de sécurité) sont égales à l'exception de la dernière valeur de sous-autorité.
EqualRect | user32.dll | Cette fonction permet de demander lequel des deux rectangles spécifiés sont égales par comparaison des coordonnées de leur coin supérieur gauche et de leur coin inférieur droit.
EqualRgn | gdi32.dll | Cette fonction permet de demander lequel des deux régions spécifiés sont égales par comparaison des coordonnées de leur coin supérieur gauche et de leur coin inférieur droit.
EqualSid | advapi32.dll | Cette fonction permet de vérifie sur les valeurs de deux préfixes SID (identificateur de sécurité) sont égales.
EraseTape | kernel32.dll | Cette fonction permet de tout supprimer ou supprimer des parties de bande magnétique de sauvegarde.
Escape | gdi32.dll | Cette fonction permet d'activer les applications de compatibilité d'accès d'un périphérique particulier non accessible directement par le GDI.
EscapeCommFunction | kernel32.dll | Cette fonction permet d'effectuer directement une communication d'un périphérique spécifié à une fonction étendue.
ExcludeClipRect | gdi32.dll | Cette fonction permet de créer une nouvelle région de Clip consistant en une minuscule région existante du rectangle spécifié.
ExcludeUpdateRgn | user32.dll | Cette fonction permet d'exclure la région mise-à-jour d'une région de capture.
ExitProcess | kernel32.dll | Cette fonction permet de terminer un processus et tous ses processus légers.
ExitThread | kernel32.dll | Cette fonction permet de terminer un processus léger.
ExitWindowsEx | user32.dll | Cette fonction permet d'effectuer l'arrêt ou le redémarrage de Windows et/ou de l'ordinateur.
ExpandEnvironmentStringsA | kernel32.dll | Cette fonction permet d'étendre une chaine de caractères de variable d'environnement et de remplacer leurs valeurs par celle correspondante.
ExpandEnvironmentStringsW | kernel32.dll | Cette fonction permet d'étendre une chaine de caractères de variable d'environnement et de remplacer leurs valeurs par celle correspondante avec des paramètres de chaine de caractères étendue (Unicode).
ExtCreatePen | gdi32.dll | Cette focntion permet de créer un crayon cosmétique ou géométrique logique ayant les attributs de style, de largeur et brosses spécifiés.
ExtCreateRegion | gdi32.dll | Cette fonction permet de créer une région avec la région et la transformation de données spécifié.
ExtEscape | gdi32.dll | Cette fonction permet d'allouer les applications vers une capacité d'accès d'un périphérique particulier n'étant pas disponible pour le GDI.
ExtFloodFill | gdi32.dll | Cette fonction permet de remplir une région d'une surface d'affichage avec la brosse courante.
ExtractAssociatedIconA | shell32.dll | Cette fonction permet de demander le Handle dans icône indexé dans un fichier.
ExtractIconA | shell32.dll | Cette fonction permet de demander une unique icône dans un fichier.
ExtractIconExA | shell32.dll | Cette fonction permet de demander plusieurs icônes dans un fichier.
ExtSelectClipRgn | gdi32.dll | Cette fonction permet de combiner la région spécifié avec la région de capture courante en utilisant le mode spécifié.
ExtTextOutA | gdi32.dll | Cette fonction permet de dessiner une chaine de caractères en utilisant la police de caractères courante.
ExtTextOutW | gdi32.dll | Cette fonction permet de dessiner une chaine de caractères en utilisant la police de caractères courante avec des paramètres de chaines de caractères étendues (Unicode).
FatalAppExitA | kernel32.dll | Cette fonction permet d'afficher la boite de dialogue d'erreur fatal amenant la terminaison anormale du programme.
FatalAppExitW | kernel32.dll | Cette fonction permet d'afficher la boite de dialogue d'erreur fatal amenant la terminaison anormale du programme avec des paramètres de chaine de caractères étendue (Unicode).
FatalExit | kernel32.dll | Cette fonction permet de transférer le contrôle d'exécution au débogueur.
FileTimeToDosDateTime | kernel32.dll | Cette fonction permet de convertir un temps de fichier 64 bits en des valeurs de date et temps.
FileTimeToLocalFileTime | kernel32.dll | Cette fonction permet d'effectuer la conversion du temps d'un fichier de format UTC (Coordonnée de Temps Universelle) en format de temps local.
FileTimeToSystemTime | kernel32.dll | Cette fonction permet de convertir un temps fichier de 64 bits à un temps de format système.
FillConsoleOutputAttribute | kernel32.dll | Cette fonction permet de fixer la couleur de texte et d'arrière plan pour un nombre spécifié de caractères en commençant au coordonnées du tampon d'écran spécifié.
FillConsoleOutputCharacterA | kernel32.dll | Cette fonction permet d'écrire un caractère dans le tampon d'écran un certain nombre de fois en commençant au coordonnées du tampon d'écran spécifié.
FillConsoleOutputCharacterW | kernel32.dll | Cette fonction permet d'écrire un caractère dans le tampon d'écran un certain nombre de fois en commençant au coordonnées du tampon d'écran spécifié avec des paramètres de chaine de caractères étendue (Unicode).
FillPath | gdi32.dll | Cette fonction permet de fermer n'importe quel figures ouvertes dans le chemin courant et remplis l'intérieur du chemin en utilisant la brosses courante et le mode de remplissage de polygone.
FillRect | user32.dll | Cette fonction permet de remplir un rectangle avec la brosse spécifié.
FillRgn | gdi32.dll | Cette fonction permet de remplir la région avec le brosse spécifié.
FindAtomA | kernel32.dll | Cette fonction permet de rechercher dans un table d'Atom local la chaine de caractères spécifié et demande l'Atom associé avec cette chaine de caractères.
FindAtomW | kernel32.dll | Cette fonction permet de rechercher dans un table d'Atom local la chaine de caractères spécifié et demande l'Atom associé avec cette chaine de caractères avec des paramètres de chaine de caractères étendue (Unicode).
FindClose | kernel32.dll | Cette fonction permet d'indiquer que la recherche des fichiers et réperoires que contient un répertoire est terminé.
FindCloseChangeNotification | kernel32.dll | Cette fonction permet d'indiquer que la recherche et modifications des fichiers et répertoires que contient un répertoire est terminé.
FindExecutableA | shell32.dll | Cette fonction permet de demander le fichier devant être exécuté lorsque la sorte d'extension de fichier est rencontré.
FindFirstChangeNotificationA | kernel32.dll | Cette fonction permet de créer un identificateur Handle d'avertissement de changement et fixe la condition d'avertissement de changement initial.
FindFirstChangeNotificationW | kernel32.dll | Cette fonction permet de créer un identificateur Handle d'avertissement de changement et fixe la condition d'avertissement de changement initial avec des paramètres de chaine de caractères étendue (Unicode).
FindFirstChangeNotification | kernel32.dll | Cette fonction permet de spécifier une recherche et modifications des fichiers et répertoires que contient un répertoire.
FindFirstFileA | kernel32.dll | Cette fonction permet de spécifier une recherche des fichiers et répertoires que contient un répertoire.
FindFirstFileExA | kernel32.dll | Cette fonction permet de rechercher dans un répertoire un fichier ou un sous-répertoire avec une correspondance de nom et d'attribut spécifié.
FindFirstFileExW | kernel32.dll | Cette fonction permet de rechercher dans un répertoire un fichier ou un sous-répertoire avec une correspondance de nom et d'attribut spécifié avec des paramètres de chaine de caractères étendue (Unicode).
FindFirstFileW | kernel32.dll | Cette fonction permet de spécifier une recherche des fichiers et répertoires que contient un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
FindFirstFreeAce | advapi32.dll | Cette fonction permet de retourner un pointeur sur le premier octet de libre sur une liste de contrôle d'accès (ACL).
FindNextChangeNotification | kernel32.dll | Cette fonction permet demander l'entrée suivant lors de la recherche et modifications des fichiers et répertoire que contient un répertoire.
FindNextFileA | kernel32.dll | Cette fonction permet demander l'entrée suivante lors de la recherche des fichiers et répertoires que contient un répertoire.
FindNextFileW | kernel32.dll | Cette fonction permet demander l'entrée suivante lors de la recherche des fichiers et répertoire que contient un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
FindResourceA | kernel32.dll | Cette fonction permet de demander l'emplacement d'une ressource avec un nom et un type spécifié dans un module spécifié.
FindResourceW | kernel32.dll | Cette fonction permet de demander l'emplacement d'une ressource avec un nom et un type spécifié dans un module spécifié avec des paramètres de chaine de caractères étendue (Unicode).
FindResourceExA | kernel32.dll | Cette fonction permet de demander l'emplacement d'une ressource avec un type, un nom et une langue spécifié dans un module spécifié.
FindResourceExW | kernel32.dll | Cette fonction permet de demander l'emplacement d'une ressource avec un type, un nom et une langue spécifié dans un module spécifié avec des paramètres de chaine de caractères étendue (Unicode).
FindWindowA | user32.dll | Cette fonction permet de demander le Handle de la première fenêtre d'application correspondant au nom de la fenêtre.
FindWindowExA | user32.dll | Cette fonction permet de demander le Handle d'une fenêtre enfant d'une fenêtre d'application.
FindWindowW | user32.dll | Cette fonction permet de demander le Handle de la première fenêtre d'application correspondant au nom de la fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
FlashWindow | user32.dll | Cette fonction permet de faire clignoter une fois une fenêtre d'application.
FlashWindowEx | user32.dll | Cette fonction permet de faire clignoter plusieurs fois une fenêtre d'application.
FlattenPath | gdi32.dll | Cette fonction permet de transformer n'importe quel courbe d'un chemin étant sélectionné dans le périphérique de contexte courant de façon à tourner chaque courbe une séquences de lignes.
FloodFill | gdi32.dll | Cette fonction permet d'effectuer le remplissage d'une région de la surface de l'écran en utilisant la brosse courante.
FlushConsoleInputBuffer | kernel32.dll | Cette fonction permet de vider le tampon d'entrée de la console.
FlushFileBuffers | kernel32.dll | Cette fonction permet d'effacer le tampon pour le fichier spécifié et provoquer l'écriture des données dans le fichier.
FlushInstructionCache | kernel32.dll | Cette fonction permet de vider les instructions en cache pour le processus spécifié.
FlushViewOfFile | kernel32.dll | Cette fonction permet d'écrire sur le disque un rang d'octets dans une vue d'un fichier.
FoldStringA | kernel32.dll | Cette fonction permet de cartographier une chaine de caractères vers une autre en effectuant les options de transformations spécifié.
FoldStringW | kernel32.dll | Cette fonction permet de cartographier une chaine de caractères vers une autre en effectuant les options de transformations spécifié avec des paramètres de chaine de caractères étendue (Unicode).
FormatMessageA | kernel32.dll | Cette fonction permet de demander un message affecté par un certain format.
FormatMessageW | kernel32.dll | Cette fonction permet de demander le dernier message d'erreur contenu dans le fichier d'erreur système.
FrameRect | user32.dll | Cette fonction permet de dessiner une bordure autour d'un rectangle, en utilisant la brosse spécifié.
FrameRgn | gdi32.dll | Cette fonction permet de dessiner une bordure entourant une région spécifié et en utilisant la brosse spécifié.
FreeConsole | kernel32.dll | Cette fonction permet de libérer une console existante.
FreeDDElParam | user32.dll | Cette fonction permet de libérer la mémoire spécifié d'un message DDE posté.
FreeEnvironmentStringsA | kernel32.dll | Cette fonction permet de libérer un bloc de chaine de caractères d'environnement.
FreeEnvironmentStringsW | kernel32.dll | Cette fonction permet de libérer un bloc de chaine de caractères d'environnement avec des paramètres de chaine de caractères étendue (Unicode).
FreeLibrary | kernel32.dll | Cette fonction permet d'incrémenter un compteur de référence pour un chargement de module de lien dynamique (DLL).
FreeLibraryAndExitThread | kernel32.dll | Cette fonction permet de décrémenté le compteur de référence d'une des bibliothèque de liens dynamique (DLL) et appel alors la fonction «ExitThread».
FreeResource | kernel32.dll | Cette fonction permet de libérer une ressource.
FreeSid | advapi32.dll | Cette fonction permet de libérer un identificateur de sécurité (SID) précédemment alloué par la fonction «AllocateAndInitializeSid».
FtpCreateDirectoryA | wininet.dll | Cette fonction permet d'effectuer la création d'un répertoire sur un protocole FTP.
FtpOpenFileA | wininet.dll | Cette fonction permet d'ouvrir un fichier avec une chaine de caractères ASCIZ sur un protocole FTP.
FtpOpenFileW | wininet.dll | Cette fonction permet d'ouvrir un fichier avec une chaine de caractères étendue (Unicode) sur un protocole FTP.
GdiComment | gdi32.dll | Cette fonction permet de copier un commentaire d'un tampon vers un méta fichier spécifié de format étendue.
GdiFlush | gdi32.dll | Cette fonction permet de vider le traitement en lot courant du processus appelant.
GdiGetBatchLimit | gdi32.dll | Cette fonction permet de retourner le nombre maximum d'appels de fonction étant accumulé dans le traitement par lot courant du processus léger courant.
GdiSetBatchLimit | gdi32.dll | Cette fonction permet de fixer le nombre maximum d'appels de fonction étant accumulé dans le traitement par lot courant du processus léger courant.
GenerateConsoleCtrlEvent | kernel32.dll | Cette fonction permet d'envoyer un signal spécifique à un groupe de processus de console.
GetAce | advapi32.dll | Cette fonction permet de demander un pointeur sur une structure d'une entrée de contrôle d'accès (ACE) d'une liste de contrôle d'accès (ACL).
GetAclInformation | advapi32.dll | Cette fonction permet de demander les informations concernant une liste de contrôle d'accès (ACL).
GetACP | kernel32.dll | Cette fonction permet de demander l'identificateur de code de page ANSI courant pour le système d'exploitation.
GetActiveWindow | user32.dll | Cette fonction permet de demander le Handle de la fenêtre active.
GetArcDirection | gdi32.dll | Cette fonction permet de demander la direction de l'arc courant pour le périphérique de contexte spécifié.
GetAspectRatioFilterEx | gdi32.dll | Cette fonction permet de demander l'ajustement de filtre d'aspect ratio courant.
GetAsyncKeyState | user32.dll | Cette fonction permet de retourner l'état de la touche spécifié.
GetAtomNameA | kernel32.dll | Cette fonction permet de demander une copie de chaine de caractères associé avec un Atom local spécifié.
GetAtomNameW | kernel32.dll | Cette fonction permet de demander une copie de chaine de caractères associé avec un Atom local spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetBinaryTypeA | kernel32.dll | Cette fonction permet de demander si le fichier est exécutable, et s'il l'est, quel type de fichier exécutable s'agit-il.
GetBinaryTypeW | kernel32.dll | Cette fonction permet de demander si le fichier est exécutable, et s'il l'est, quel type de fichier exécutable s'agit-il avec des paramètres de chaine de caractères étendue (Unicode).
GetBitmapBits | gdi32.dll | Cette fonction permet de copier les bits du Bitmap spécifié dans un tampon.
GetBitmapDimensionEx | gdi32.dll | Cette fonction permet de demander les dimensions d'un Bitmap.
GetBkColor | gdi32.dll | Cette fonction permet de retourner la couleur d'arrière-plan courante.
GetBkMode | gdi32.dll | Cette fonction permet de demander le mode mixte d'arrière-plan pour le contexte de périphérique spécifié.
GetBoundsRect | gdi32.dll | Cette fonction permet de retourner l'accumulation d'informations de limite rectangulaire d'un périphérique de contexte.
GetBrushOrgEx | gdi32.dll | Cette fonction permet de demander l'origine de la brosse courante dans un périphérique de contexte courant.
GetCapture | user32.dll | Cette fonction permet de demander le Handle de la fenêtre où la souris est capturé.
GetCaretBlinkTime | user32.dll | Cette fonction permet de demander le taux de clignotement du caret.
GetCaretPos | user32.dll | Cette fonction permet de demander la position courante d'un caret.
GetCharABCWidthsA | gdi32.dll | Cette fonction permet de demander la largeur, dans son unité de mesure logique, de caractères consécutifs dans une rangée données d'une police de caractères TrueType courant.
GetCharABCWidthsW | gdi32.dll | Cette fonction permet de demander la largeur, dans son unité de mesure logique, de caractères consécutifs dans une rangée données d'une police de caractères TrueType courant avec des paramètres de chaines de caractères étendues (Unicode).
GetCharABCWidthsFloatA | gdi32.dll | Cette fonction permet de demander la largeur, dans son unité de mesure logique, de caractères consécutifs dans une rangée données d'une police de caractères courant.
GetCharABCWidthsFloatW | gdi32.dll | Cette fonction permet de demander la largeur, dans son unité de mesure logique, de caractères consécutifs dans une rangée données d'une police de caractères courant avec des paramètres de chaine de caractères étendues (Unicode).
GetCharWidth32A | gdi32.dll | Cette fonction permet demander la largeur, dans des coordonnées logiques, de caractères consécutifs dans une rangée spécifié d'une police de caractères courante.
GetCharWidth32W | gdi32.dll | Cette fonction permet demander la largeur, dans des coordonnées logiques, de caractères consécutifs dans une rangée spécifié d'une police de caractères courante avec des paramètres de chaine de caractères étendues (Unicode).
GetCharWidthA | gdi32.dll | Cette fonction permet demander la largeur, dans des coordonnées logiques, de caractères consécutifs dans une rangée spécifié d'une police de caractères courante dans un contexte de compatibilité avec les fonctions 16 bits.
GetCharWidthW | gdi32.dll | Cette fonction permet demander la largeur, dans des coordonnées logiques, de caractères consécutifs dans une rangée spécifié d'une police de caractères courante dans un contexte de compatibilité avec les fonctions 16 bits avec des paramètres de chaine de caractères étendues (Unicode).
GetCharWidthFloatA | gdi32.dll | Cette fonction permet de demander la largeur fractionné de caractères consécutifs dans une rangée spécifié de la police de caractères courante.
GetCharWidthFloatW | gdi32.dll | Cette fonction permet de demander la largeur fractionné de caractères consécutifs dans une rangée spécifié de la police de caractères courante avec des paramètres de chaine de caractères étendues (Unicode).
GetCharacterPlacementA | gdi32.dll | Cette fonction permet de demander les informations à propos d'une chaine de caractères, comme la largeur des caractères, le positionnement des carets, l'ordre dans la chaine de caractères et la rendue du glyphe.
GetCharacterPlacementW | gdi32.dll | Cette fonction permet de demander les informations à propos d'une chaine de caractères, comme la largeur des caractères, le positionnement des carets, l'ordre dans la chaine de caractères et la rendue du glyphe avec des paramètres de chaine de caractères étendues (Unicode).
GetClassInfoA | user32.dll | Cette fonction permet de demander les informations à propos d'une classe de fenêtre.
GetClassInfoExA | user32.dll | Cette fonction permet de demander les informations à propos d'une classe de fenêtre en incluant le Handle du petit icône associé avec la fenêtre de classe.
GetClassInfoExW | user32.dll | Cette fonction permet de demander les informations à propos d'une classe de fenêtre en incluant le Handle du petit icône associé avec la fenêtre de classe avec des paramètres de chaine de caractères étendues (Unicode).
GetClassInfoW | user32.dll | Cette fonction permet de demander les informations à propos d'une classe de fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
GetClassLongA | user32.dll | Cette fonction permet de demander des valeurs d'informations en 32 bits sur une classe.
GetClassLongW | user32.dll | Cette fonction permet de demander des valeurs d'informations en 32 bits sur une classe avec des paramètres de chaine de caractères étendues (Unicode).
GetClassNameA | user32.dll | Cette fonction permet de demander le nom d'une classe.
GetClassNameW | user32.dll | Cette fonction permet de demander le nom d'une classe avec des paramètres de chaine de caractères étendues (Unicode).
GetClassWord | user32.dll | Cette fonction permet de demander une valeur 16 bits de déplacement spécifié dans une classe de mémoire supplémentaire pour la classe de fenêtre à laquelle la fenêtre appartient.
GetClientRect | user32.dll | Cette fonction permet de demander les coordonnées client de la région de fenêtre client.
GetClipboardData | user32.dll | Cette fonction permet de demander le Handle du presse-papier de données courant avec le format spécifié.
GetClipboardFormatNameA | user32.dll | Cette fonction permet de demander le nom de format de presse-papier enregistré.
GetClipboardFormatNameW | user32.dll | Cette fonction permet de demander le nom de format de presse-papier enregistré avec des paramètres de chaine de caractères étendues (Unicode).
GetClipboardOwner | user32.dll | Cette fonction permet de demander le Handle de la fenêtre associé à un presse-papier.
GetClipboardViewer | user32.dll | Cette fonction permet de demander le Handle de la première fenêtre d'une chaine visualisation de presse-papier.
GetClipBox | gdi32.dll | Cette fonction permet de demander les dimensions d'un petit rectangle complètement contenu dans la région de clip courant.
GetClipCursor | user32.dll | Cette fonction permet de demander les coordonnées de la fenêtre limitant le déplacement du pointeur de la souris.
GetClipRgn | gdi32.dll | Cette fonction permet de demander le Handle d'une région de clip affecté par un périphérique de contexte spécifié.
GetColorAdjustment | gdi32.dll | Cette fonction permet de demander les valeurs de couleurs d'ajustement pour le contexte de périphérique spécifié.
GetColorSpace | gdi32.dll | Cette fonction permet de demander le Handle courant de l'espace de couleur logique du périphérique de contexte spécifié.
GetCommandLineA | kernel32.dll | Cette fonction permet de retourner la ligne de commande de l'application courante.
GetCommandLineW | kernel32.dll | Cette fonction permet de retourner la ligne de commande de l'application courante avec des paramètres de chaine de caractères étendue (Unicode).
GetCommConfig | kernel32.dll | Cette fonction permet de demander la configuration courante pour un périphérique de communication.
GetCommMask | kernel32.dll | Cette fonction permet de demander la valeur d'un masque d'événement pour un périphérique de communication spécifié.
GetCommModemStatus | kernel32.dll | Cette fonction permet de demander les valeurs du registre de contrôle du modem.
GetCommProperties | kernel32.dll | Cette fonction permet de remplir le tampon avec des informations concernant les propriétés de communications pour un périphérique de communication spécifié.
GetCommState | kernel32.dll | Cette fonction permet de remplir un bloc de contrôle de périphérique (une structure DCB) avec les ajustements de contrôle courant pour un périphérique de communication spécifié.
GetCommTimeouts | kernel32.dll | Cette fonction permet de demander les paramètres de dépassement de délai pour toutes les opérations de lecture ou d'écriture pour un périphérique de communication spécifié.
GetCompressedFileSizeA | kernel32.dll | Cette fonction permet de demander le nombre d'octets d'une unité d'entreposage actuellement utilisé pour un fichier spécifié.
GetCompressedFileSizeW | kernel32.dll | Cette fonction permet de demander le nombre d'octets d'une unité d'entreposage actuellement utilisé pour un fichier spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetComputerNameA | kernel32.dll | Cette fonction permet de demander le nom de l'ordinateur sous forme d'une chaine de caractères ASCIZ.
GetComputerNameW | kernel32.dll | Cette fonction permet de demander le nom de l'ordinateur sous forme d'une chaine de caractères ASCIZ avec des paramètres de chaine de caractères étendue (Unicode).
GetComputerNameExA | kernel32.dll | Cette fonction permet de retourner la nom NetBIOS ou DNS de l'ordinateur local.
GetComputerObjectNameA | secur32.dll | Cette fonction permet de retourner le nom de l'ordinateur dans un format spécifié.
GetConsoleCursorInfo | kernel32.dll | Cette fonction permet de demander des informations à propos de la taille et de la visibilité du curseur pour le tampon de console écran spécifié.
GetConsoleCP | kernel32.dll | Cette fonction permet de demander l'identité de code de page utilisé pour la console associé avec le processus appelant.
GetConsoleMode | kernel32.dll | Cette fonction permet de demander le mode d'entrée courant pour le tampon d'entrée de la console ou le mode de sortie courant pour le tampon d'écran de la console.
GetConsoleOutputCP | kernel32.dll | Cette fonction permet de retourner l'identité de code de page de sortie utilisé par la console associé avec le processus appelant.
GetConsoleScreenBufferInfo | kernel32.dll | Cette fonction permet de demander les informations à propos du tampon d'écran de la console spécifié.
GetConsoleTitleA | kernel32.dll | Cette fonction permet de retourner le nom de la console courante.
GetConsoleTitleW | kernel32.dll | Cette fonction permet de retourner le nom de la console courante avec des paramètres de chaine de caractères étendue (Unicode).
GetCPInfo | kernel32.dll | Cette fonction permet de retourner des informations sur le code de page spécifié.
GetCurrencyFormatA | kernel32.dll | Cette fonction permet de demander la chaine de caractères du format d'un nombre avec une chaine de caractères de monnaie pour une localité spécifié.
GetCurrencyFormatW | kernel32.dll | Cette fonction permet de demander la chaine de caractères du format d'un nombre avec une chaine de caractères de monnaie pour une localité spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetCurrentDirectoryA | kernel32.dll | Cette fonction permet de demander le répertoire courant du processus courant.
GetCurrentDirectoryW | kernel32.dll | Cette fonction permet de demander le répertoire courant du processus courant avec des paramètres de chaine de caractères étendue (Unicode).
GetCurrentHwProfileA | advapi32.dll | Cette fonction pemret de demander le profile matériel courant.
GetCurrentHwProfileW | advapi32.dll | Cette fonction pemret de demander le profile matériel courant avec des paramètres de chaine de caractères étendue (Unicode).
GetCurrentObject | gdi32.dll | Cette fonction permet de retourner l'objet sélectionné courant du type spécifié.
GetCurrentPositionEx | gdi32.dll | Cette fonction permet de demander la position courante dans des coordonnées logiques.
GetCurrentProcess | kernel32.dll | Cette fonction permet de retourner le Handle du processus courant.
GetCurrentProcessId | kernel32.dll | Cette fonction permet de demander l'identificateur de processus courant
GetCurrentProcessorNumber | kernel32.dll | Cette fonction permet de demander le nombre de processeur du processus courant lors de l'appel d'une fonction
GetCurrentThread | kernel32.dll | Cette fonction permet de retourner le Handle du processus courant.
GetCurrentThreadId | kernel32.dll | Cette fonction permet de retourner l'identificateur du processus courant.
GetCursor | user32.dll | Cette fonction permet de demander le Handle du curseur courant.
GetCursorPos | user32.dll | Cette fonction permet de demander la position du pointeur de souris à l'écran
GetDateFormatA | kernel32.dll | Cette fonction permet de demander le date dans une chaine de caractères ASCIZ selon le format spécifié.
GetDateFormatW | kernel32.dll | Cette fonction permet de demander la date dans une chaine de caractères ASCIZ selon le format spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetDC | user32.dll | Cette fonction permet de demander le contexte d'objet d'une fenêtre d'application.
GetDCEx | user32.dll | Cette fonction permet de demander le Handle du périphérique de contexte pour la fenêtre spécifié.
GetDCOrgEx | gdi32.dll | Cette fonction permet de demander l'origine de translation final d'un périphérique de contexte spécifié.
GetDefaultCommConfigA | kernel32.dll | Cette fonction permet de demander la configuration par défaut d'un périphérique de communication.
GetDefaultCommConfigW | kernel32.dll | Cette fonction permet de demander la configuration par défaut d'un périphérique de communication avec des paramètres de chaine de caractères étendue (Unicode).
GetDesktopWindow | user32.dll | Cette fonction permet de demander le Handle attribué à la fenêtre du bureau.
GetDeviceCaps | gdi32.dll | Cette fonction permet de demander les informations d'un périphérique spécifié à propos du périphérique d'affichage.
GetDeviceGammaRamp | gdi32.dll | Cette fonction permet de demander la rampe gamma d'un panneau d'affichage de couleur directe.
GetDialogBaseUnits | user32.dll | Cette fonction permet de retourner l'unité de base de la boite de dialogue qu'utilise Windows quand il créer une boite de dialogue.
GetDIBColorTable | gdi32.dll | Cette fonction permet de demander les valeurs de couleurs RVB (rouge, vert, bleu) d'une rangée d'entrées d'une table de couleurs d'une section DIB Bitmap étant actuellement sélectionné dans un périphérique de contexte spécifié.
GetDIBits | gdi32.dll | Cette fonction permet de demander les bits d'un Bitmap compatible et copie celui-ci dans un tampon DIB en utilisant le format spécifié.
GetDiskFreeSpaceA | kernel32.dll | Cette fonction permet de demander l'espace de libre sur une unité disque.
GetDiskFreeSpaceExA | kernel32.dll | Cette fonction permet de demander des informations global sur l'espace de libre sur une unité disque.
GetDiskFreeSpaceExW | kernel32.dll | Cette fonction permet de demander des informations global sur l'espace de libre sur une unité disque avec des paramètres de chaine de caractères étendue (Unicode).
GetDiskFreeSpaceW | kernel32.dll | Cette fonction permet de demander l'espace de libre sur une unité disque avec des paramètres de chaine de caractères étendue (Unicode).
GetDlgCtrlID | user32.dll | Cette fonction permet de retourner le Handle de la fenêtre enfant.
GetDlgItem | user32.dll | Cette fonction permet de demander le Handle d'un contrôle étant données par la boite de dialogue.
GetDlgItemInt | user32.dll | Cette fonction permet d'effectuer la translation du texte d'un contrôle d'une boite de dialogue en une valeur entière.
GetDlgItemTextA | user32.dll | Cette fonction permet de demander le titre ou le texte associé avec un contrôle de boite de dialogue.
GetDlgItemTextW | user32.dll | Cette fonction permet de demander le titre ou le texte associé avec un contrôle de boite de dialogue avec des paramètres de chaine de caractères étendues (Unicode).
GetDoubleClickTime | user32.dll | Cette fonction permet de demander le temps maximal autorisé pour que des clics sur les boutons de la souris soit considéré comme un double-clic.
GetDriveTypeA | kernel32.dll | Cette fonction permet de demander le type d'unité disque.
GetDriveTypeW | kernel32.dll | Cette fonction permet de demander le type d'unité disque avec des paramètres de chaine de caractères étendue (Unicode).
GetEnhMetaFileA | gdi32.dll | Cette fonction permet de créer un Handle étant identifié par un fichier méta de format étendue entreposé dans le fichier spécifié.
GetEnhMetaFileW | gdi32.dll | Cette fonction permet de créer un Handle étant identifié par un fichier méta de format étendue entreposé dans le fichier spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetEnhMetaFileBits | gdi32.dll | Cette fonction permet de demander le contenu d'un fichier méta spécifié de format étendue et le copie dans un tampon.
GetEnhMetaFileDescriptionA | gdi32.dll | Cette fonction permet de demander une description texte optionnel d'un fichier méta de format étendue et copie la chaine de caractères dans un tampon spécifié.
GetEnhMetaFileDescriptionW | gdi32.dll | Cette fonction permet de demander une description texte optionnel d'un fichier méta de format étendue et copie la chaine de caractères dans un tampon spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetEnhMetaFileHeader | gdi32.dll | Cette fonction permet de demander l'enregistrement contenu dans l'entête du fichier méta spécifié de format étendue.
GetEnhMetaFilePaletteEntries | gdi32.dll | Cette fonction permet de demander les entrées de palette optionnel pour le fichier méta étendue spécifié.
GetEnhMetaFilePixelFormat | gdi32.dll | Cette fonction permet de demander les informations de format de pixel pour un fichier méta étendue.
GetEnvironmentStringsA | kernel32.dll | Cette fonction permet de demander les variables d'environnements du processus courant.
GetEnvironmentStringsW | kernel32.dll | Cette fonction permet de demander les variables d'environnements du processus courant avec des paramètres de chaine de caractères étendue (Unicode).
GetEnvironmentVariableA | kernel32.dll | Cette fonction permet de demander la valeur d'une variable d'environnement du système d'exploitation.
GetEnvironmentVariableW | kernel32.dll | Cette fonction permet de demander la valeur d'une variable d'environnement du système d'exploitation avec des paramètres de chaine de caractères étendue (Unicode).
GetExitCodeProcess | kernel32.dll | Cette fonction permet de demander le code d'état de terminaison d'un processus spécifié.
GetExitCodeThread | kernel32.dll | Cette fonction permet de demander le code d'état de terminaison d'un processus léger (Thread) spécifié.
GetFileAttributesA | kernel32.dll | Cette fonction permet de demander les attributs d'un fichier ou d'un répertoire.
GetFileAttributesExA | kernel32.dll | Cette fonction permet de demander les informations étendues d'attributs d'un fichier ou d'un répertoire.
GetFileAttributesExW | kernel32.dll | Cette fonction permet de demander les informations étendues d'attributs d'un fichier ou d'un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
GetFileAttributesW | kernel32.dll | Cette fonction permet de demander les attributs d'un fichier ou d'un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
GetFileInformationByHandle | kernel32.dll | Cette fonction permet de demander les informations associé au fichier spécifié.
GetFileSecurityA | advapi32.dll | Cette fonction permet de demander les informations spécifié sur la sécurité d'un fichier ou d'un répertoire.
GetFileSecurityW | advapi32.dll | Cette fonction permet de demander les informations spécifié sur la sécurité d'un fichier ou d'un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
GetFileSize | kernel32.dll | Cette fonction permet de demander la taille, en octets, d'un fichier spécifié.
GetFileTime | kernel32.dll | Cette fonction permet de demander la date et l'heure d'un fichier de sa création, de sa dernière modification ou de son dernière accès.
GetFileType | kernel32.dll | Cette fonction permet de retourner le type d'un fichier spécifié.
GetFileVersionInfoSizeA | version.dll | Cette fonction permet de demander la taille de l'entête d'information de version du fichier spécifié.
GetFocus | user32.dll | Cette fonction permet de demander le focus d'entrée de la fenêtre spécifié.
GetFontData | gdi32.dll | Cette fonction permet de demander les données de police de caractères métriques pour une police de caractères TrueType.
GetFontLanguageInfo | gdi32.dll | Cette fonction permet de retourner les informations à propos de sélection de police de caractères courante dans l'affichage de contexte spécifié.
GetForegroundWindow | user32.dll | Cette fonction permet de demander le Handle de la fenêtre d'application courante.
GetFullPathNameA | kernel32.dll | Cette fonction permet de demander le chemin et le nom de fichier complet pour un fichier spécifié.
GetFullPathNameW | kernel32.dll | Cette fonction permet de demander le chemin et le nom de fichier complet pour un fichier spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetGlyphOutlineA | gdi32.dll | Cette fonction permet de demander ligne de limite ou du Bitmap d'un caractère d'une police de caractères TrueType étant sélectionné dans le périphérique de contexte spécifié.
GetGlyphOutlineW | gdi32.dll | Cette fonction permet de demander ligne de limite ou du Bitmap d'un caractère d'une police de caractères TrueType étant sélectionné dans le périphérique de contexte spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetGraphicsMode | gdi32.dll | Cette fonction permet de demander le mode graphique courant pour le périphérique de contexte courant.
GetGuiResources | kernel32.dll | Cette fonction permet de demander le nombre d'identificateur de GUI (Interface graphique utilisateur) du processus courant.
GetHandleInformation | kernel32.dll | Cette fonction permet de demander les informations conçernant certaines propriétés d'un objet avec un identificateur Handle.
GetICMProfileA | gdi32.dll | Cette fonction permet de demander le nom du fichier de profile de couleurs pour le périphérique associé avec le périphérique de contexte spécifié.
GetICMProfileW | gdi32.dll | Cette fonction permet de demander le nom du fichier de profile de couleurs pour le périphérique associé avec le périphérique de contexte spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetIconInfo | user32.dll | Cette fonction permet de demander les informations à propos de l'icône ou du curseur spécifié.
GetInputState | user32.dll | Cette fonction permet d'indiquer si un événement de clic de souris ou de clavier est survenue dans la file d'attente du système du traitement requis.
GetIpStatistics | iphlpapi.dll | Cette fonction permet de demander les informations de statistique sur le IP de l'ordinateur.
GetJobA | winspool.drv | Cette fonction permet de demander les données d'un travail contenu dans le tampon d'impressions de l'imprimante.
GetKBCodePage | user32.dll | Cette fonction retourne le code de page chargé par le système d'exploitation Windows.
GetKernelObjectSecurity | advapi32.dll | Cette fonction permet de demander une copie du descripteur de sécurité protégé d'un objet du noyau du système d'exploitation.
GetKerningPairs | gdi32.dll | Cette fonction permet de demander les paires de crénages de caractères pour la police de caractères courante sélectionné du périphérique de contexte spécifié.
GetKeyboardLayout | user32.dll | Cette fonction permet de demander la couche de clavier active pour le processus léger spécifié.
GetKeyboardLayoutList | user32.dll | Cette fonction permet de demander le Handle de la couche de clavier correspondant à l'ensemble d'entrée courant local dans le système.
GetKeyboardLayoutNameA | user32.dll | Cette fonction permet de demander le nom des couches de clavier active.
GetKeyboardLayoutNameW | user32.dll | Cette fonction permet de demander le nom des couches de clavier active avec des paramètres de chaine de caractères étendues (Unicode).
GetKeyboardState | user32.dll | Cette fonction permet de demander l'état des 256 touches virtuel de clavier.
GetKeyboardType | user32.dll | Cette fonction permet de demander les informations à propos du clavier courant.
GetKeyNameTextA | user32.dll | Cette fonction permet de demander une chaine de caractères représentant le nom d'une touche du clavier.
GetKeyNameTextW | user32.dll | Cette fonction permet de demander une chaine de caractères représentant le nom d'une touche du clavier avec des paramètres de chaine de caractères étendues (Unicode).
GetKeyState | user32.dll | Cette fonction permet de demander l'état d'une touche virtuel de clavier.
GetLargestConsoleWindowSize | kernel32.dll | Cette fonction permet de demander la taille de la fenêtre de console la plus large possible en se basant sur la police de caractères et la taille d'affichage.
GetLastActivePopup | user32.dll | Cette fonction permet de demander laquelle des fenêtres du propriétaire de la fenêtre POP-UP a été récemment activé.
GetLastError | kernel32.dll | Cette fonction permet de demander la dernière erreur s'étant produite dans une API.
GetLengthSid | advapi32.dll | Cette fonction permet de retourner la longueur, en octets, d'une structure valide d'identificateur de sécurité (SID).
GetLocaleInfoA | kernel32.dll | Cette fonction permet de demander des informations de nature local sur le système.
GetLocaleInfoW | kernel32.dll | Cette fonction permet de demander des informations de nature local sur le système avec des paramètres de chaine de caractères étendue (Unicode).
GetLocalTime | kernel32.dll | Cette fonction permet de demander la date et l'heure local du système.
GetLogColorSpaceA | gdi32.dll | Cette fonction permet de demander les informations à propos de l'espace de couleurs logiques identifié par le Handle spécifié.
GetLogColorSpaceW | gdi32.dll | Cette fonction permet de demander les informations à propos de l'espace de couleurs logiques identifié par le Handle spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetLogicalDrives | kernel32.dll | Cette fonction permet de demander quel sont les unités de disque valide.
GetLogicalDriveStringsA | kernel32.dll | Cette fonction permet de remplir un tampon avec une chaine de caractères spécifiant une unité de disque système valide.
GetLogicalDriveStringsW | kernel32.dll | Cette fonction permet de remplir un tampon avec une chaine de caractères spécifiant une unité de disque système valide avec des paramètres de chaine de caractères étendue (Unicode).
GetLogicalProcessorInformation | kernel32.dll | Cette fonction permet de demander des informations concernant les processeurs logiques et le matériel associé.
GetMailslotInfo | kernel32.dll | Cette fonction permet de demander des informations pour une slot de courriel.
GetMapMode | gdi32.dll | Cette fonction permet de demander le mode de cartographie courant.
GetMenu | user32.dll | Cette fonction permet de demander le Handle du menu déroulant de la fenêtre d'application spécifié.
GetMenuCheckMarkDimensions | user32.dll | Cette fonction permet de retourner les dimensions du Bitmap marqué par défaut.
GetMenuContextHelpId | user32.dll | Cette fonction permet de demander l'identifiant de contexte d'aide associé avec le menu spécifié.
GetMenuDefaultItem | user32.dll | Cette fonction permet de demander l'item de menu par défaut du menu spécifié.
GetMenuItemCount | user32.dll | Cette fonction permet de demander le nombre d'item que contient menu déroulant.
GetMenuItemID | user32.dll | Cette fonction permet de demander les identificateurs d'un emplacement d'item de menu d'une position spécifié.
GetMenuItemInfoA | user32.dll | Cette fonction permet de demander les informations à propos de l'item de menu.
GetMenuItemInfoW | user32.dll | Cette fonction permet de demander les informations à propos de l'item de menu avec des paramètres de chaine de caractères étendues (Unicode).
GetMenuItemRect | user32.dll | Cette fonction permet de demander les limites rectangulaires pour l'item de menu spécifié.
GetMenuState | user32.dll | Cette fonction permet de demander l'état des drapeaux associés avec l'item de menu spécifié.
GetMenuStringA | user32.dll | Cette fonction permet de copier l'étiquette d'un item de menu dans un tampon.
GetMenuStringW | user32.dll | Cette fonction permet de copier l'étiquette d'un item de menu dans un tampon avec des paramètres de chaine de caractères étendues (Unicode).
GetMessageA | user32.dll | Cette fonction permet de demander un message d'une application de file d'attente de message dans une structure spécifié.
GetMessageW | user32.dll | Cette fonction permet de demander un message d'une application de file d'attente de message dans une structure spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetMessageExtraInfo | user32.dll | Cette fonction permet de demander les informations supplémentaires associés avec le dernier message des fonctions GetMessage ou PeekMessage.
GetMessagePos | user32.dll | Cette fonction permet de retourner une valeur long représentant une position de curseur dans une coordonnée d'écran.
GetMessageTime | user32.dll | Cette fonction permet de retourner l'heure du dernier message reçu par la fonction GetMessage.
GetMetaFileA | gdi32.dll | Cette fonction permet de créer un Handle identifiant le format Windows de fichier de méta données.
GetMetaFileW | gdi32.dll | Cette fonction permet de créer un Handle identifiant le format Windows de fichier de méta données avec des paramètres de chaine de caractères étendues (Unicode).
GetMetaFileBitsEx | gdi32.dll | Cette fonction permet de demander le contenu d'un fichier méta de format Windows et copie le contenu dans un tampon spécifié.
GetMetaRgn | gdi32.dll | Cette fonction permet de demander la région méta courante pour le périphérique de contexte spécifié.
GetMiterLimit | gdi32.dll | Cette fonction permet de demander la limite mitre pour le périphérique de contexte spécifié.
GetModuleFileNameA | kernel32.dll | Cette fonction permet de demander un nom de fichier long ou demande le nom complet de chemin et nom de fichier pour un fichier exécutable contenu dans le module spécifié.
GetModuleFileNameW | kernel32.dll | Cette fonction permet de demander un nom de fichier long ou demande le nom complet de chemin et nom de fichier pour un fichier exécutable contenu dans le module spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetModuleHandleA | kernel32.dll | Cette fonction permet de retourner l'identificateur Handle du module spécifié si le fichier est situé dans l'espace d'adresse d'un processus appelant.
GetModuleHandleW | kernel32.dll | Cette fonction permet de retourner l'identificateur Handle du module spécifié si le fichier est situé dans l'espace d'adresse d'un processus appelant avec des paramètres de chaine de caractères étendue (Unicode).
GetNamedPipeHandleStateA | kernel32.dll | Cette fonction permet de demander les informations d'état conçernant le nom du tuyau spécifié.
GetNamedPipeHandleStateW | kernel32.dll | Cette fonction permet de demander les informations d'état conçernant le nom du tuyau spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetNamedPipeInfo | kernel32.dll | Cette fonction permet de demander les informations conçernant le nom de tuyau spécifié.
GetNearestColor | gdi32.dll | Cette fonction permet de demander la couleur solide correspondant le mieux à la couleur logique.
GetNearestPaletteIndex | gdi32.dll | Cette fonction permet de demander l'index d'une entrée de palette logique correspondant le mieux à la valeur de couleur spécifié.
GetNextDlgGroupItem | user32.dll | Cette fonction permet de rechercher le contrôle précédent ou suivant d'un groupe de contrôle dans une boite de dialogue.
GetNextDlgTabItem | user32.dll | Cette fonction permet de demander le Handle du premier contrôle d'un style WS_TABSTOP du contrôle spécifié.
GetNextWindow | user32.dll | Cette fonction permet de rechercher le Handle de la prochaine ou précédente fenêtre dans la liste du gestionnaire de fenêtre.
GetNumaAvailableMemoryNode | kernel32.dll | Cette fonction permet de demander la quantité de mémoire disponible dans le noeud spécifié.
GetNumberFormatA | kernel32.dll | Cette fonction permet de transformer un nombre selon le format d'affichage spécifié.
GetNumberFormatW | kernel32.dll | Cette fonction permet de transformer un nombre selon le format d'affichage spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetNumberOfConsoleInputEvents | kernel32.dll | Cette fonction permet de demander le nombre d'enregistrement d'entrée non lue dans le tampon d'entrée de console.
GetNumberOfConsoleMouseButtons | kernel32.dll | Cette fonction permet de demander le nombre de boutons de la souris qu'utilise la console courante.
GetNumberOfEventLogRecords | advapi32.dll | Cette fonction permet de demander le nombre d'enregistrement de l'événement du journal de bord spécifié.
GetObjectA | gdi32.dll | Cette fonction permet de remplir un tampon avec les informations définit dans la région spécifié.
GetObjectW | gdi32.dll | Cette fonction permet de remplir un tampon avec les informations définit dans la région spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetObjectType | gdi32.dll | Cette fonction permet de demander l'identifiant de type d'objet spécifié.
GetOEMCP | kernel32.dll | Cette fonction permet de demander le code de page OEM du système d'exploitation.
GetOldestEventLogRecord | advapi32.dll | Cette fonction permet de demander le nombre d'enregistrement dans les anciens enregistrement du journal de bord spécifié.
GetOpenClipboardWindow | user32.dll | Cette fonction permet de demander le Handle de la fenêtre actuellement ouverte dans le presse-papier.
GetOpenFileNameA | comdlg32.dll | Cette fonction permet d'afficher une boite de dialogue offrant la possibilité de choisir un fichier.
GetOutlineTextMetricsA | gdi32.dll | Cette fonction permet de demander le métrique du texte pour la police de caractères TrueType.
GetOutlineTextMetricsW | gdi32.dll | Cette fonction permet de demander le métrique du texte pour la police de caractères TrueType avec des paramètres de chaine de caractères étendues (Unicode).
GetOverlappedResult | kernel32.dll | Cette fonction permet de retourner le résultat d'une opération de recouvrement sur un fichier, un tuyau ou un périphérique de communications spécifié
GetPaletteEntries | gdi32.dll | Cette fonction permet de demander le rang des entrées d'une palette dans une palette logique.
GetParent | user32.dll | Cette fonction permet de demander le Handle de la fenêtre parent spécifié.
GetPath | gdi32.dll | Cette fonction permet de demander les coordonnées définit par des points de fin de lignes et une courbe de point de contrôle trouvé dans un chemin étant sélectionné dans un périphérique de contexte spécifié.
GetPixel | gdi32.dll | Cette fonction permet de demander la couleur sous format RVB (RGB) d'un pixel affiché à l'écran.
GetPixelFormat | gdi32.dll | Cette fonction permet de demander l'index du format de pixel actuellement sélectionné dans le périphérique de contexte spécifié.
GetPolyFillMode | gdi32.dll | Cette fonction permet de demander le mode de remplissage d'un polygone.
GetPrinterA | winspool.drv | Cette fonction permet de demander des informations sur une imprimante.
GetPriorityClass | kernel32.dll | Cette fonction permet de retourner la priorité d'une classe pour un processus spécifié.
GetPriorityClipboardFormat | user32.dll | Cette fonction permet de demander le format du premier presse-papier dans la liste de données existantes du presse-papier.
GetPrivateObjectSecurity | advapi32.dll | Cette fonction permet de demander des informations de descripteur de sécurité à un serveur d'objet protégé.
GetPrivateProfileIntA | kernel32.dll | Cette fonction permet de demander un entier associé avec une clef dans une section spécifié d'un fichier initialisé.
GetPrivateProfileIntW | kernel32.dll | Cette fonction permet de demander un entier associé avec une clef dans une section spécifié d'un fichier initialisé avec des paramètres de chaine de caractères étendue (Unicode).
GetPrivateProfileSectionA | kernel32.dll | Cette fonction permet de demander tous les valeurs et clefs pour la section initialisé spécifié.
GetPrivateProfileSectionW | kernel32.dll | Cette fonction permet de demander tous les valeurs et clefs pour la section initialisé spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetPrivateProfileSectionNamesA | kernel32.dll | Cette fonction permet de demander les noms de toutes les sections dans un fichier initialisé.
GetPrivateProfileSectionNamesW | kernel32.dll | Cette fonction permet de demander les noms de toutes les sections dans un fichier initialisé avec des paramètres de chaine de caractères étendue (Unicode).
GetPrivateProfileStringA | kernel32.dll | Cette fonction permet de demander une chaine de caractères de la section spécifié dans un fichier initialisé.
GetPrivateProfileStringW | kernel32.dll | Cette fonction permet de demander une chaine de caractères de la section spécifié dans un fichier initialisé avec des paramètres de chaine de caractères étendue (Unicode).
GetProcAddress | kernel32.dll | Cette fonction permet de demander l'adresse d'une fonction d'exportation de bibliothèque de liens dynamique (DLL).
GetProcessAffinityMask | kernel32.dll | Cette fonction permet de demander un masque de correspondance de processus spécifié avec le système.
GetProcessHeap | kernel32.dll | Cette fonction permet de demander un identificateur Handle pour la mémoire de tas d'un processus appelant.
GetProcessHeaps | kernel32.dll | Cette fonction permet de demander un identificateur Handle pour tous les mémoires de tas valides pour un processus appelant.
GetProcessPriorityBoost | kernel32.dll | Cette fonction permet de demander l'état de la priorité de contrôle d'amplificateur d'un processus spécifié.
GetProcessShutdownParameters | kernel32.dll | Cette fonction permet de demander les paramètres de fermetures et d'éteindre le système d'exploitation pour un le processus appelant courant.
GetProcessTimes | kernel32.dll | Cette fonction permet de demander les informations d'horloge pour le processus spécifié.
GetProcessVersion | kernel32.dll | Cette fonction permet de demander la version majeur et mineur pour un processus spécifié en exécution.
GetProcessWindowStation | user32.dll | Cette fonction permet de demander le Handle de la fenêtre de station associé avec le processus appelant.
GetProcessWorkingSetSize | kernel32.dll | Cette fonction permet de demander la taille de l'espace de travail minimum et maximum pour le processus spécifié.
GetProfileIntA | kernel32.dll | Cette fonction permet de demander un entier pour le nom de clef spécifié dans une section spécifié dans un fichier «WIN.INI».
GetProfileIntW | kernel32.dll | Cette fonction permet de demander un entier pour le nom de clef spécifié dans une section spécifié dans un fichier «WIN.INI» avec des paramètres de chaine de caractères étendue (Unicode).
GetProfileSectionA | kernel32.dll | Cette fonction permet de demander tous les valeurs et clefs pour la section spécifié dans un fichier «WIN.INI».
GetProfileSectionW | kernel32.dll | Cette fonction permet de demander tous les valeurs et clefs pour la section spécifié dans un fichier «WIN.INI» avec des paramètres de chaine de caractères étendue (Unicode).
GetProfileStringA | kernel32.dll | Cette fonction permet de demander une chaine de caractères associé avec la clef spécifié dans une section du fichier «WIN.INI».
GetProfileStringW | kernel32.dll | Cette fonction permet de demander une chaine de caractères associé avec la clef spécifié dans une section du fichier «WIN.INI» avec des paramètres de chaine de caractères étendue (Unicode).
GetPropA | user32.dll | Cette fonction permet de demander une données Handle d'une liste de propriété d'une fenêtre.
GetPropW | user32.dll | Cette fonction permet de demander une données Handle d'une liste de propriété d'une fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
GetQueuedCompletionStatus | kernel32.dll | Cette fonction permet d'essayer de compléter la file d'attente d'un paquet d'entrée/sortie spécifié pour un port d'entrée/sortie.
GetQueueStatus | user32.dll | Cette fonction permet de retourner une valeur indiquant le type de message dans la file d'attente.
GetRasterizerCaps | gdi32.dll | Cette fonction permet de retourner les drapeaux indiquant si la police de caractères TrueType est installé dans le système.
GetRegionData | gdi32.dll | Cette fonction permet de remplir le tampons spécifié avec une région de données décrites.
GetRgnBox | gdi32.dll | Cette fonction permet de demander les coordonnées des limites rectangulaires d'une région spécifié.
GetROP2 | gdi32.dll | Cette fonction permet de demander le mode dessinage courant.
GetScrollInfo | user32.dll | Cette fonction permet de demander les paramètres d'une barre de défilement, en incluant les positions de défilement minimum et maximum, la taille de la page et la position de la boite de défilement.
GetScrollPos | user32.dll | Cette fonction permet de demander la position courante de la boite de défilement d'une barre de défilement.
GetScrollRange | user32.dll | Cette fonction permet de demander la position minimum et maximum de la barre de défilement spécifié.
GetSecurityDescriptorControl | advapi32.dll | Cette fonction permet de demander le contrôle de descripteur de sécurité et les informations de révision.
GetSecurityDescriptorDacl | advapi32.dll | Cette fonction permet de demander un pointeur sur une liste de contrôle d'accès (ACL) discrétionnaire dans un descripteur de sécurité spécifié.
GetSecurityDescriptorGroup | advapi32.dll | Cette fonction permet de demander les informations de groupe primaire d'un descripteur de sécurité.
GetSecurityDescriptorLength | advapi32.dll | Cette fonction permet de retourner la longueur, en octets, d'une structure valide de descripteur de sécurité.
GetSecurityDescriptorOwner | advapi32.dll | Cette fonction permet de demander les informations du propriétaire d'un descripteur de sécurité
GetSecurityDescriptorSacl | advapi32.dll | Cette fonction permet de demander un pointeur sur la liste de contrôle d'accès système (ACL) dans un descripteur de sécurité spécifié.
GetShortPathNameA | kernel32.dll | Cette fonction permet de demander, à partir d'un nom long, le nom en format DOS (8 caractères de nom et 3 caractères d'extension) d'un fichier.
GetShortPathNameW | kernel32.dll | Cette fonction permet de demander, à partir d'un nom long, le nom en format DOS (8 caractères de nom et 3 caractères d'extension) d'un fichier avec des paramètres de chaine de caractères étendue (Unicode).
GetSidIdentifierAuthority | advapi32.dll | Cette fonction permet de retourner l'adresse de la structure d'un «SID_IDENTIFIER_AUTHORITY» dans l'identificateur de sécurité (SID) spécifié.
GetSidLengthRequired | advapi32.dll | Cette fonction permet de retourner la longueur, en octets, d'un tampon requis pour l'entreposage d'une structure SID avec le nombre de sous-autorisation spécifié.
GetSidSubAuthority | advapi32.dll | Cette fonction permet de retourner l'adresse d'une sous-autorité spécifié d'une structure SID.
GetSidSubAuthorityCount | advapi32.dll | Cette fonction permet de retourner l'adresse d'un champs d'une structure SID contenant le compteur de sous-autorité.
GetStartupInfoA | kernel32.dll | Cette fonction permet de demander le contenu de la structure «STARTUPINFO» spécifié quand un appel de processus est créé.
GetStartupInfoW | kernel32.dll | Cette fonction permet de demander le contenu de la structure «STARTUPINFO» spécifié quand un appel de processus est créé avec des paramètres de chaine de caractères étendue (Unicode).
GetStdHandle | kernel32.dll | Cette fonction permet de demander le Handle d'une entrée ou sortie standard.
GetStockObject | gdi32.dll | Cette fonction permet de demander le Handle d'un des outils de stylo, brosse, police de caractères,... des objets de Windows
GetStretchBltMode | gdi32.dll | Cette fonction permet de demander le mode d'étirement du Bitmap courant.
GetStringTypeA | kernel32.dll | Cette fonction permet de retourner des informations type de caractère pour la chaine de caractères spécifié.
GetStringTypeExA | kernel32.dll | Cette fonction permet de retourner des informations type de caractère pour la chaine de caractères spécifié en Win32.
GetStringTypeExW | kernel32.dll | Cette fonction permet de retourner des informations type de caractère pour la chaine de caractères spécifié en Win32 avec des paramètres de chaine de caractères étendue (Unicode).
GetStringTypeW | kernel32.dll | Cette fonction permet de retourner des informations type de caractère pour la chaine de caractères spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetSubMenu | user32.dll | Cette fonction permet de demander le Handle du menu contextuel.
GetSysColor | user32.dll | Cette fonction permet de demander la couleur d'un des objets affichés du système d'exploitations de Windows.
GetSysColorBrush | user32.dll | Cette fonction permet de demander le Handle identifiant la brosse logique correspondant à l'index de couleur spécifié.
GetSystemDefaultLCID | kernel32.dll | Cette fonction permet de demander l'identificateur locale du système par défaut.
GetSystemDefaultLangID | kernel32.dll | Cette fonction permet de demander l'identificateur de langage système par défaut.
GetSystemDirectoryA | kernel32.dll | Cette fonction permet de demander le répertoire dans lequel les fichiers systèmes du système d'exploitations de Windows sont situés.
GetSystemDirectoryW | kernel32.dll | Cette fonction permet de demander le répertoire dans lequel les fichiers systèmes du système d'exploitations de Windows sont situés avec des paramètres de chaine de caractères étendue (Unicode).
GetSystemInfo | kernel32.dll | Cette fonction permet de demander divers informations à propos du système courant et du microprocesseur.
GetSystemMenu | user32.dll | Cette fonction permet de demander le Handle du menu système d'une fenêtre d'application.
GetSystemMetrics | user32.dll | Cette fonction permet de demander le type de système métrique ou de ses paramètres utilisés.
GetSystemPaletteEntries | gdi32.dll | Cette fonction permet de demander un rang dans les entrées de palette de la palette système.
GetSystemPaletteUse | gdi32.dll | Cette fonction permet de demander si une application est accessible à une palette d'entrée système.
GetSystemPowerStatus | kernel32.dll | Cette fonction permet de demander l'état de l'alimentation en énergie de l'ordinateur.
GetSystemTime | kernel32.dll | Cette fonction permet de demander le temps (date et heure) courant du système d'exploitation. Le temps du système d'exploitation est une expression UTC (Coordinated Universal Time).
GetSystemTimeAsFileTime | kernel32.dll | Cette fonction permet de demander la date et l'heure du système d'exploitation.
GetSystemTimeAdjustment | kernel32.dll | Cette fonction permet de demander si le système applique périodiquement un ajustement du temps après chaque tic d'horloge.
GetTabbedTextExtentA | user32.dll | Cette fonction permet de calculer la largeur et la hauteur d'une chaine de caractères.
GetTabbedTextExtentW | user32.dll | Cette fonction permet de calculer la largeur et la hauteur d'une chaine de caractères avec des paramètres de chaine de caractères étendues (Unicode).
GetTapeParameters | kernel32.dll | Cette fonction permet de demander des informations descriptives sur l'unité de bande magnétique de copie de sauvegarde.
GetTapePosition | kernel32.dll | Cette fonction permet de demander l'adresse courante logique ou en bloc absolue sur une bande magnétique de copie de sauvegarde.
GetTapeStatus | kernel32.dll | Cette fonction permet de demander si la bande magnétique de copie de sauvegarde est prête à recevoir une commande de processus.
GetTcpStatistics | iphlpapi.dll | Cette fonction permet de demander les informations de statistique sur le TCP de l'ordinateur.
GetTempFileNameA | kernel32.dll | Cette fonction permet de demander un nom de fichier créer temporairement.
GetTempFileNameW | kernel32.dll | Cette fonction permet de demander un nom de fichier créer temporairement avec des paramètres de chaine de caractères étendue (Unicode).
GetTempPathA | kernel32.dll | Cette fonction permet de demander le répertoire par défaut des fichiers temporairement.
GetTempPathW | kernel32.dll | Cette fonction permet de demander le répertoire par défaut des fichiers temporairement avec des paramètres de chaine de caractères étendue (Unicode).
GetTextAlign | gdi32.dll | Cette fonction permet de demander l'état des drapeaux d'alignement de texte pour un périphérique de contexte spécifié.
GetTextCharacterExtra | gdi32.dll | Cette fonction permet de demander l'ajustement courant pour la quantité d'espacement entre les caractères.
GetTextCharset | gdi32.dll | Cette fonction permet de demander les informations à propos d'un ensemble de caractères de la police de caractères actuellement sélectionné.
GetTextCharsetInfo | gdi32.dll | Cette fonction permet de demander les informations supplémentaires à propos de l'ensemble de caractères de la police de caractères actuellement sélectionné.
GetTextColor | gdi32.dll | Cette fonction permet de demander la couleur de texte courante.
GetTextExtentExPointA | gdi32.dll | Cette fonction permet de demander le nombre de caractères dans la chaine de caractères correspondant à l'espace spécifié et remplit un tableau avec le texte étendue pour chacun de ses caractères.
GetTextExtentExPointW | gdi32.dll | Cette fonction permet de demander le nombre de caractères dans la chaine de caractères correspondant à l'espace spécifié et remplit un tableau avec le texte étendue pour chacun de ses caractères avec des paramètres de chaine de caractères étendues (Unicode).
GetTextExtentPoint32A | gdi32.dll | Cette fonction permet de calculer la largeur et la hauteur de la chaine de caractères de texte spécifié.
GetTextExtentPoint32W | gdi32.dll | Cette fonction permet de calculer la largeur et la hauteur de la chaine de caractères de texte spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetTextExtentPointA | gdi32.dll | Cette fonction permet de calculer la largeur et la hauteur d'un chaine de caractères de texte spécifié dans un contexte de compatibilité 16 bits.
GetTextExtentPointW | gdi32.dll | Cette fonction permet de calculer la largeur et la hauteur d'un chaine de caractères de texte spécifié dans un contexte de compatibilité 16 bits avec des paramètres de chaine de caractères étendues (Unicode).
GetTextFaceA | gdi32.dll | Cette fonction permet de demander le nom de type de police de caractères étant sélectionné dans le périphérique de contexte spécifié.
GetTextFaceW | gdi32.dll | Cette fonction permet de demander le nom de type de police de caractères étant sélectionné dans le périphérique de contexte spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetTextMetricsA | gdi32.dll | Cette fonction permet de demander les informations métriques d'une police de caractères courante.
GetTextMetricsW | gdi32.dll | Cette fonction permet de demander les informations métriques d'une police de caractères courante avec des paramètres de chaine de caractères étendues (Unicode).
GetThreadContext | kernel32.dll | Cette fonction permet de demander le contexte d'un processus léger spécifié.
GetThreadDesktop | user32.dll | Cette fonction permet de demander le Handle du bureau associé avec le processus spécifié.
GetThreadLocale | kernel32.dll | Cette fonction permet de demander l'identificateur local d'un processus.
GetThreadPriority | kernel32.dll | Cette fonction permet de retourner la valeur de priorité du processus léger spécifié.
GetThreadPriorityBoost | kernel32.dll | Cette fonction permet de retourner la priorité de lancement d'un processus léger.
GetThreadSelectorEntry | kernel32.dll | Cette fonction permet de retourner l'entrée de descripteur de table pour le sélecteur et le processus léger spécifié.
GetThreadTimes | kernel32.dll | Cette fonction permet de demander les informations de temps à propos du processus léger spécifié.
GetTickCount | kernel32.dll | Cette fonction permet de demander le nombre de milliseconde écoulé depuis le démarrage de Windows.
GetTimeFormatA | kernel32.dll | Cette fonction permet de retourner la chaine de caractères du format du temps localement.
GetTimeFormatW | kernel32.dll | Cette fonction permet de retourner la chaine de caractères du format du temps localement avec des paramètres de chaine de caractères étendue (Unicode).
GetTimeZoneInformation | kernel32.dll | Cette fonction permet de demander les informations de la zone horaire courante du système d'exploitation Windows.
GetTokenInformation | advapi32.dll | Cette fonction permet de demander le type d'information associé à un accès de jeton.
GetTopWindow | user32.dll | Cette fonction permet de demander le Handle du plus haut niveau de fenêtre enfant appartenant à la fenêtre parent spécifié.
GetUdpStatistics | iphlpapi.dll | Cette fonction permet de demander les informations de statistique sur le UDP de l'ordinateur.
GetUpdateRect | user32.dll | Cette fonction permet de demander les coordonnées d'un petit rectangle complètement enfermé dans une région mise à jour par la fenêtre donnée.
GetUpdateRgn | user32.dll | Cette fonction permet de demander la région mise à jour dans la fenêtre.
GetUserDefaultLCID | kernel32.dll | Cette fonction permet de demander l'identificateur local de l'utilisateur par défaut.
GetUserNameA | advapi32.dll | Cette fonction permet de demander le nom de l'utilisateur courant actuellement sous Windows.
GetUserNameW | advapi32.dll | Cette fonction permet de demander le nom de l'utilisateur courant actuellement sous le système d'exploitation Windows avec des paramètres de chaine de caractères étendue (Unicode).
GetUserNameExA | secur32.dll | Cette fonction permet de retourner le nom de l'utilisateur dans le format EXTENDED_NAME_FORMAT.
GetUserObjectInformationA | user32.dll | Cette fonction permet de demander les informations à propos d'une station de fenêtre ou d'un objet de bureau.
GetUserObjectInformationW | user32.dll | Cette fonction permet de demander les informations à propos d'une station de fenêtre ou d'un objet de bureau avec des paramètres de chaine de caractères étendues (Unicode).
GetUserObjectSecurity | user32.dll | Cette fonction permet de demander les informations de sécurité pour l'objet utilisateur spécifié.
GetVersion | kernel32.dll | Cette fonction permet de demander le numéro de version courante du système d'exploitation Windows et les informations à propos de la plateforme du système d'exploitation.
GetVersionExA | kernel32.dll | Cette fonction permet de demander la version du système d'exploitation Windows.
GetVersionExW | kernel32.dll | Cette fonction permet de demander la version du système d'exploitation Windows avec des paramètres de chaine de caractères étendue (Unicode).
GetViewportExtEx | gdi32.dll | Cette fonction permet de demander les extensions X et Y d'un point de vue d'un périphérique de contexte.
GetViewportOrgEx | gdi32.dll | Cette fonction permet de demander les coordonnées X et Y d'origine d'une association de point vue avec un périphérique de contexte spécifié.
GetVolumeInformationA | kernel32.dll | Cette fonction permet de demander les informations d'entête d'une unité disque.
GetVolumeInformationW | kernel32.dll | Cette fonction permet de demander les informations d'entête d'une unité disque avec des paramètres de chaine de caractères étendue (Unicode).
GetWindow | user32.dll | Cette fonction permet de demander le Handle d'une fenêtre d'application.
GetWindowContextHelpId | user32.dll | Cette fonction permet de demander l'identificateur de contexte, si possible, associé avec la fenêtre spécifié.
GetWindowDC | user32.dll | Cette fonction permet de demander un périphérique de contexte pour la fenêtre, la barre de titre, les menus et la barre de défilement.
GetWindowLongA | user32.dll | Cette fonction permet de demander, sous forme d'une valeur de 32 bits, une des propriétés d'une fenêtre d'application.
GetWindowLongW | user32.dll | Cette fonction permet de demander, sous forme d'une valeur de 32 bits, une des propriétés d'une fenêtre d'application avec des paramètres de chaine de caractères étendues (Unicode).
GetWindowPlacement | user32.dll | Cette fonction permet de demander l'état d'affichage et de restituer, minimiser et maximiser les positions d'une fenêtre.
GetWindowRect | user32.dll | Cette fonction permet de demander les coordonnées et la taille d'une fenêtre d'application.
GetWindowRgn | user32.dll | Cette fonction permet de demander une copie d'une région de fenêtre dans une fenêtre.
GetWindowsDirectoryA | kernel32.dll | Cette fonction permet de demander le répertoire dans lequel le système d'exploitation Windows est situés.
GetWindowsDirectoryW | kernel32.dll | Cette fonction permet de demander le répertoire dans lequel le système d'exploitation Windows est situés avec des paramètres de chaine de caractères étendue (Unicode).
GetWindowTextA | user32.dll | Cette fonction permet de demander du texte contenu dans une fenêtre d'application.
GetWindowTextLengthA | user32.dll | Cette fonction permet de demander la longueur du texte contenu dans une fenêtre d'application.
GetWindowTextLengthW | user32.dll | Cette fonction permet de demander la longueur du texte contenu dans une fenêtre d'application avec des paramètres de chaine de caractères étendues (Unicode).
GetWindowTextW | user32.dll | Cette fonction permet de demander du texte contenu dans une fenêtre d'application avec des paramètres de chaine de caractères étendues (Unicode).
GetWindowThreadProcessId | user32.dll | Cette fonction permet de demander l'identificateur de processus léger étant créer par la fenêtre spécifié et, optionnellement, l'identificateur du processus créant la fenêtre.
GetWindowWord | user32.dll | Cette fonction permet de demander une valeur 16 bits de déplacement spécifié dans une fenêtre en mémoire supplémentaire pour la fenêtre spécifié.
GetWinMetaFileBits | gdi32.dll | Cette fonction permet de convertir des enregistrements de format étendue en enregistrement de format Windows de fichier méta et d'entreposer les enregistrements convertie dans le tampon spécifié.
GetWindowExtEx | gdi32.dll | Cette fonction permet de demander les extensions X et Y d'une fenêtre associé avec un périphérique de contexte spécifié.
GetWindowOrgEx | gdi32.dll | Cette fonction permet de demander les coordonnées X et Y d'origine de la fenêtre associé avec le périphérique de contexte spécifié.
GetWorldTransform | gdi32.dll | Cette fonction permet de demander l'espace mondiale courant vers la transformation d'espace de page.
glAccum | opengl32.dll | Cette fonction permet d'effecter un contrôle du tampon d'accumulation sous OpenGL.
glAlphaFunc | opengl32.dll | Cette fonction permet de définir la fonction devant servir de test Alpha sous OpenGL.
glBegin | opengl32.dll | Cette fonction permet de définir le commencement de la limite d'une primitive ou d'un groupe de primitive sous OpenGL.
glBitmap | opengl32.dll | Cette fonction permet le contenu d'une image Bitmap sous OpenGL.
glBlendFunc | opengl32.dll | Cette fonction permet de définir les facteurs de blending sous OpenGL.
glCallList | opengl32.dll | Cette fonction permet d'appeler une liste de commande graphique OpenGL.
glCallLists | opengl32.dll | Cette fonction permet d'appeler plusieurs listes de commande graphique OpenGL.
glClear | opengl32.dll | Cette fonction permet de vider les tampons du OpenGL ainsi qu'effacement du contenu de la fenêtre.
glClearAccum | opengl32.dll | Cette fonction permet de vider le tampon d'accumulation du OpenGL.
glClearColor | opengl32.dll | Cette fonction permet de vider le tampon chromatique du OpenGL.
glClearDepth | opengl32.dll | Cette fonction permet de vider le tampon de profondeur du OpenGL.
glClearIndex | opengl32.dll | Cette fonction permet de vider le mode index du OpenGL.
glClearStencil | opengl32.dll | Cette fonction permet de vider le tampon stencil du OpenGL.
glClipPlane | opengl32.dll | Cette fonction permet de définir un nouveau plan de clipping du OpenGL.
glColor3b | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'octet dans OpenGL.
glColor3bv | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'une structure d'octets dans OpenGL.
glColor3d | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'un réel double dans OpenGL.
glColor3dv | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'une structure des réels doubles dans OpenGL.
glColor3f | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'un réel dans OpenGL.
glColor3fv | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'une structure des réels dans OpenGL.
glColor3i | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'un entier long dans OpenGL.
glColor3iv | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'une structure des entiers long dans OpenGL.
glColor3s | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'un entier court dans OpenGL.
glColor3sv | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'une structure des entiers court dans OpenGL.
glEnd | opengl32.dll | Cette fonction permet de définir la fin de la limite d'une primitive ou d'un groupe de primitive sous OpenGL.
GlobalAddAtomA | kernel32.dll | Cette fonction permet d'ajouter un caractère à une table global d'Atom et retourne une valeur unique d'identificateur par chaine de caractères.
GlobalAddAtomW | kernel32.dll | Cette fonction permet d'ajouter un caractère à une table global d'Atom et retourne une valeur unique d'identificateur par chaine de caractères avec des paramètres de chaine de caractères étendue (Unicode).
GlobalAlloc | kernel32.dll | Cette fonction permet d'allouer de la mémoire dans les ressources global du système d'exploitation.
GlobalCompact | kernel32.dll | Cette fonction permet de réorganiser les allocations de mémoire dynamique du tas global en spécifiant une taille de mémoire minimum.
GlobalDeleteAtom | kernel32.dll | Cette fonction permet de décrémenté le compteur de référence de la chaine de caractères d'Atom global.
GlobalFindAtomA | kernel32.dll | Cette fonction permet de rechercher une table d'Atom global dans la chaine de caractères spécifié et demande l'Atom global associé avec la chaine de caractères.
GlobalFindAtomW | kernel32.dll | Cette fonction permet de rechercher une table d'Atom global dans la chaine de caractères spécifié et demande l'Atom global associé avec la chaine de caractères étendue (Unicode).
GlobalFix | kernel32.dll | Cette fonction permet de prévenir l'objet de mémoire global donnée contre un mouvement de mémoire linéaire. Cette fonction est obsolète.
GlobalFlags | kernel32.dll | Cette fonction permet de retourner les informations à propos de l'objet de mémoire global spécifié.
GlobalFree | kernel32.dll | Cette fonction permet de libérer de la mémoire dans les ressources global du système d'exploitation.
GlobalGetAtomNameA | kernel32.dll | Cette fonction permet de demander une copie de la chaine de caractères associé avec l'Atom global donnée.
GlobalGetAtomNameW | kernel32.dll | Cette fonction permet de demander une copie de la chaine de caractères associé avec l'Atom global donnée avec des paramètres de chaine de caractères étendue (Unicode).
GlobalHandle | kernel32.dll | Cette fonction permet de demander le Handle de l'objet de mémoire global spécifié.
GlobalLock | kernel32.dll | Cette fonction permet de verrouiller l'emplacement du bloc de mémoire dans les ressources global du système d'exploitation.
GlobalMemoryStatus | kernel32.dll | Cette fonction permet de demander l'état de la mémoire du système d'exploitation.
GlobalMemoryStatusEx | kernel32.dll | Cette fonction permet de demander l'état de la mémoire du système d'exploitation ayant plus de 4 Go de RAM d'installer sur l'ordinateur.
GlobalReAlloc | kernel32.dll | Cette fonction permet de changer la taille ou les attributs de l'objet de mémoire global spécifié.
GlobalSize | kernel32.dll | Cette fonction permet de demander la taille courante, en octets, de l'objet de mémoire global.
GlobalUnfix | kernel32.dll | Cette fonction permet d'annuler les effets d'une fonction GlobalFix et d'allouer l'objet de mémoire global a être déplacé dans la mémoire linéaire. Cette fonction est obsolète.
GlobalUnlock | kernel32.dll | Cette fonction permet de déverrouiller l'emplacement du bloc de mémoire dans les ressources global du système d'exploitation.
GlobalUnWire | kernel32.dll | Cette fonction permet de restituer la conversion d'un pointeur de processus 32 bits après une allocation de mémoire.
GrayStringA | user32.dll | Cette fonction permet de dessiner du texte grisé à l'emplacement donnée par l'écriture du texte dans un Bitmap en mémoire, grisonnant le Bitmap, et copie alors le Bitmap dans l'affichage.
GrayStringW | user32.dll | Cette fonction permet de dessiner du texte grisé à l'emplacement donnée par l'écriture du texte dans un Bitmap en mémoire, grisonnant le Bitmap, et copie alors le Bitmap dans l'affichage avec des paramètres de chaine de caractères étendues (Unicode).
HeapAlloc | kernel32.dll | Cette fonction permet d'allouer un bloc de mémoire à l'aide d'un tas.
HeapCompact | kernel32.dll | Cette fonction permet de demander la taille de la largeur d'un bloc de mémoire disponible dans le tas spécifié.
HeapCreate | kernel32.dll | Cette fonction permet de créer un objet de tas privé pouvant être utilisé par le processus appelant.
HeapDestroy | kernel32.dll | Cette fonction permet de détruire l'objet de tas spécifié.
HeapFree | kernel32.dll | Cette fonction permet de libérer un bloc de mémoire précédemment alloué d'un tas par la fonction HeapAlloc ou HeapReAlloc.
HeapLock | kernel32.dll | Cette fonction permet de verrouiller l'association avec le tas spécifié dans un objet de section critique.
HeapReAlloc | kernel32.dll | Cette fonction permet de réallouer un bloc de mémoire d'un tas.
HeapSize | kernel32.dll | Cette fonction permet de demander la taille d'un bloc de mémoire alloué dans le tas par la fonction HeapAlloc ou HeapReAlloc.
HeapUnlock | kernel32.dll | Cette fonction permet de déverrouiller l'association avec le tas spécifié dans un objet de section critique.
HeapValidate | kernel32.dll | Cette fonction permet de valider le tas spécifié.
HeapWalk | kernel32.dll | Cette fonction permet d'énumérer les blocs de mémoire dans le tas spécifié.
HideCaret | user32.dll | Cette fonction permet de cacher un caret en l'enlevant de l'écran.
HiliteMenuItem | user32.dll | Cette fonction permet de faire passer un item de menu en mode de surbrillance.
IcmpCloseHandle | icmp.dll | Cette fonction permet de fermer un fichier sur le protocole ICMP (Internet Control Message Protocol).
IcmpCreateFile | icmp.dll | Cette fonction permet de créer un fichier sur le protocole ICMP (Internet Control Message Protocol).
IcmpSendEcho | icmp.dll | Cette fonction permet d'envoyer une requête en écho par le protocole ICMP (Internet Control Message Protocol).
ImpersonateDdeClientWindow | user32.dll | Cette fonction permet d'activer l'échange de données dynamique (DDE) vers un contexte d'application sécurisé d'imitation de client DDE.
ImpersonateLoggedOnUser | advapi32.dll | Cette fonction permet d'appeler une processus léger utilisateur impersonnel.
ImpersonateNamedPipeClient | advapi32.dll | Cette fonction permet de demmander si l'application client a un nom de canal impersonnel.
ImpersonateSelf | advapi32.dll | Cette fonction permet de demander le jeton d'accès au contexte de sécurité impersonnel d'un processus appelant.
inet_addr | Wsock32.dll | Cette fonction permet l'adresse IP contenu dans une chaine de caractères sous sa forme numérique 32 bits.
InflateRect | user32.dll | Cette fonction permet d'agrandir ou diminuer la taille d'un objet de rectangle.
InitAtomTable | kernel32.dll | Cette fonction permet d'initialiser la table d'Atom local et fixe la taille spécifié.
InitCommonControlsEx | comctl32.dll | Cette fonction permet d'initialiser une classe de contrôle commun.
InitializeAcl | advapi32.dll | Cette fonction permet de créer une nouvelle structure de liste de contrôle d'accès (ACL).
InitializeCriticalSection | kernel32.dll | Cette fonction permet d'initialiser un objet de section critique.
InitializeSecurityDescriptor | advapi32.dll | Cette fonction permet d'initialiser un nouveau descripteur de sécurité.
InitializeSid | advapi32.dll | Cette fonction permet d'initialiser une structure d'identificateur de sécurité (SID).
InitiateSystemShutdownA | advapi32.dll | Cette fonction permet d'initier l'opération de fermeture ou de redémarrage en cours d'exécution du système d'exploitation Windows.
InitiateSystemShutdownW | advapi32.dll | Cette fonction permet d'initier l'opération de fermeture ou de redémarrage en cours d'exécution du système d'exploitation Windows avec des paramètres de chaine de caractères étendue (Unicode).
InSendMessage | user32.dll | Cette fonction permet de spécifier si la procédure de la fenêtre courante est en traitement d'un message d'envoi d'une autre tâche par appel de la fonction SendMessage.
InsertMenuA | user32.dll | Cette fonction permet d'insérer un nouvel item de menu dans un menu et déplace les autres items en bas du menu.
InsertMenuItemA | user32.dll | Cette fonction permet d'insérer un nouvel item de menu à la position spécifié dans la barre de menu ou un menu contextuel.
InsertMenuItemW | user32.dll | Cette fonction permet d'insérer un nouvel item de menu à la position spécifié dans la barre de menu ou un menu contextuel avec les paramètres de chaine de caractères étendues (Unicode).
InsertMenuW | user32.dll | Cette fonction permet d'insérer un nouvel item de menu dans un menu et déplace les autres items en bas du menu avec des paramètres de chaine de caractères étendues (Unicode).
InstallNewDevice | newdev.dll | Cette fonction permet d'installer un nouveau périphérique.
InterlockedCompareExchange | kernel32.dll | Cette fonction permet d'effectuer un traitement de comparaison atomique de valeurs spécifiés et échange les valeurs en se basant sur le résultat de la comparaison.
InterlockedDecrement | kernel32.dll | Cette fonction permet de décrémenter les deux valeurs spécifié de un et vérifie le résultat des valeurs.
InterlockedExchange | kernel32.dll | Cette fonction permet d'échanger automatiquement une paire de valeurs 32 bits.
InterlockedExchangeAdd | kernel32.dll | Cette fonction permet d'effectuer un traitement automatique d'ajouter d'une valeur incrémenté à une variable ajouté.
InterlockedIncrement | kernel32.dll | Cette fonction permet d'incrémenter les deux valeurs des variables spécifiés et vérifie la valeur du résultat.
InternetAutodial | wininet.dll | Cette fonction permet de provoquer une connexion Internet en utilisant le protocole TCP/IP.
InternetAutodialHangup | wininet.dll | Cette fonction permet d'arrêter une connexion Internet en utilisant le protocole TCP/IP.
InternetGetConnectedState | wininet.dll | Cette fonction permet de demander le type de connexion Internet qu'utilise le TCP/IP de Windows.
IntersectClipRect | gdi32.dll | Cette fonction permet de créer une nouvelle région de capture vers l'intersection de la région courante et du rectangle spécifié.
IntersectRect | user32.dll | Cette fonction permet de calculer l'intersection de 2 sources rectangulaires et place les coordonnées du rectangle d'intersection dans le rectangle de destination.
InvalidateRect | user32.dll | Cette fonction permet d'ajouter un rectangle pour la mise à jour d'une région d'une fenêtre.
InvalidateRgn | user32.dll | Cette fonction permet d'ajouter une région à une région de fenêtre à mettre à jour.
InvertRect | user32.dll | Cette fonction permet d'inverser une région rectangulaire.
InvertRgn | gdi32.dll | Cette fonction permet d'inverser les couleurs d'une région spécifié.
IsBadCodePtr | kernel32.dll | Cette fonction permet de demander si l'appel du processus a un accès de mémoire en lecture à l'adresse spécifié.
IsBadHugeReadPtr | kernel32.dll | Cette fonction permet de vérifier si l'appel du processus a un accès en lecture dans les rangs de mémoire spécifié.
IsBadHugeWritePtr | kernel32.dll | Cette fonction permet de vérifier si l'appel du processus a un accès en écriture dans les rangs de mémoire spécifié.
IsBadReadPtr | kernel32.dll | Cette fonction permet de vérifier si l'appel du processus a un accès en lecture dans les rangs de mémoire spécifié.
IsBadStringPtrA | kernel32.dll | Cette fonction permet de vérifier que l'appel du processus à un accès en lecture dans les rangs de mémoire pointer sur une chaine de caractères.
IsBadStringPtrW | kernel32.dll | Cette fonction permet de vérifier que l'appel du processus à un accès en lecture dans les rangs de mémoire pointer sur une chaine de caractères étendue (Unicode).
IsBadWritePtr | kernel32.dll | Cette fonction permet de vérifier si l'appel du processus a un accès en écriture dans les rangs de mémoire spécifié.
IsDBCSLeadByte | kernel32.dll | Cette fonction permet de demander si un caractère spécifié est un octet de tête, le premier octet d'un caractère est un DBCS (Double-Byte Character Set).
IsDBCSLeadByteEx | kernel32.dll | Cette fonction permet de demander si un caractère spécifié est un octet de tête, le premier octet d'un caractère est un DBCS (Double-Byte Character Set) avec un code de page.
IsCharAlphaA | user32.dll | Cette fonction permet de demander si un caractère fait partie de l'ensemble de caractères alphabétiques de la langue.
IsCharAlphaNumericA | user32.dll | Cette fonction permet de demander si un caractère est une lettre ou un chiffre arabes.
IsCharAlphaNumericW | user32.dll | Cette fonction permet de demander si un caractère est une lettre ou un chiffre arabes avec des paramètres de chaine de caractères étendues (Unicode).
IsCharAlphaW | user32.dll | Cette fonction permet de demander si un caractère fait partie de l'ensemble de caractères alphabétiques de la langue avec des paramètres de chaine de caractères étendues (Unicode).
IsCharLowerA | user32.dll | Cette fonction permet de demander si un caractère est une lettre en minuscule.
IsCharLowerW | user32.dll | Cette fonction permet de demander si un caractère est une lettre en minuscule avec des paramètres de chaine de caractères étendues (Unicode).
IsCharUpperA | user32.dll | Cette fonction permet de demander si un caractère est une lettre en majuscule.
IsCharUpperW | user32.dll | Cette fonction permet de demander si un caractère est une lettre en majuscule avec des paramètres de chaine de caractères étendues (Unicode).
IsChild | user32.dll | Cette fonction permet de demander si la fenêtre spécifié est l'enfant ou d'une autre descendance direct de la fenêtre parent spécifié.
IsClipboardFormatAvailable | user32.dll | Cette fonction permet de demander si les données d'un certain format existe dans le presse-papier.
IsDebuggerPresent | kernel32.dll | Cette fonction permet de demander si l'application en cours est sous l'influence d'un débogueur.
IsDialogMessageA | user32.dll | Cette fonction permet de demander si le message spécifié est prévu dans la modélisation de la boite de dialogue donnée et, si c'est le cas, traite le message.
IsDialogMessageW | user32.dll | Cette fonction permet de demander si le message spécifié est prévu dans la modélisation de la boite de dialogue donnée et, si c'est le cas, traite le message avec des paramètres de chaine de caractères étendues (Unicode).
IsDlgButtonChecked | user32.dll | Cette fonction permet de demander si un bouton a une coche à côté de lui et si un bouton à trois états de gris, est coché ou pas.
IsIconic | user32.dll | Cette fonction permet de demander si la fenêtre spécifié est minimisé (en état d'icône).
IsMenu | user32.dll | Cette fonction permet d'indiquer si le Handle spécifié est un Handle de menu.
IsProcessorFeaturePresent | kernel32.dll | Cette fonction permet de demander si les fonctionnalités du microprocessseur sont supportés par l'un des microprocesseur de la machine courante.
IsRectEmpty | user32.dll | Cette fonction permet de déterminer si le rectangle spécifié est vide.
IsTextUnicode | advapi32.dll | Cette fonction permet de demander l'adresse du tampon contenant probablement une forme de texte Unicode.
IsValidAcl | advapi32.dll | Cette fonction permet de valider une liste de contrôle d'accès (ACL).
IsValidCodePage | kernel32.dll | Cette fonction permet d'indiquer si la page de code spécifié est valide.
IsValidLocale | kernel32.dll | Cette fonction permet d'appliquer un test de validité à un identificateur locale.
IsValidSecurityDescriptor | advapi32.dll | Cette fonction permet de valider une structure de descripteur de sécurité «SECURITY_DESCRIPTOR».
IsValidSid | advapi32.dll | Cette fonction permet de valider une structure SID en vérifiant que le numéro de version est situé dans le rang et les intervalles de nombres de sous-autorité.
IsWindow | user32.dll | Cette fonction permet de demander si la fenêtre de Handle spécifié est valide.
IsWindowEnabled | user32.dll | Cette fonction permet de demander si la fenêtre spécifié est activé par la souris ou l'entrée clavier.
IsWindowUnicode | user32.dll | Cette fonction permet de demander si la fenêtre spécifié est une fenêtre Unicode native.
IsWindowVisible | user32.dll | Cette fonction permet de demander si la fenêtre spécifié est dans un état de visibilité.
IsZoomed | user32.dll | Cette fonction permet de demander si la fenêtre spécifié est maximisé (ou prend toute l'écran).
keybd_event | user32.dll | Cette fonction permet de provoquer un événement d'appui de touche clavier.
KillTimer | user32.dll | Cette fonction permet de détruire la minuterie spécifié.
LCMapStringA | kernel32.dll | Cette fonction permet de cartographier une chaine de caractères vers une autre en effectuant le traitement de transformation de dépendance locale.
LCMapStringW | kernel32.dll | Cette fonction permet de cartographier une chaine de caractères étendue (Unicode) vers une autre en effectuant le traitement de transformation de dépendance locale.
LeaveCriticalSection | kernel32.dll | Cette fonction permet de libérer le propriétaire d'un objet de section critique spécifié.
LineDDA | gdi32.dll | Cette fonction permet de calculer tous les points successifs d'une ligne spécifié par les coordonnées de début et de fin.
LineTo | gdi32.dll | Cette fonction permet de tracer une ligne des coordonnées courante à la position spécifié.
LoadAcceleratorsA | user32.dll | Cette fonction permet d'effectuer le chargement d'une table d'accélérateur d'une ressource.
LoadAcceleratorsW | user32.dll | Cette fonction permet d'effectuer le chargement d'une table d'accélérateur d'une ressource avec des paramètres de chaine de caractères étendues (Unicode).
LoadBitmapA | user32.dll | Cette fonction permet de charger la ressource de Bitmap spécifié du fichier de module d'exécutable donnée.
LoadBitmapW | user32.dll | Cette fonction permet de charger la ressource de Bitmap spécifié du fichier de module d'exécutable donnée avec des paramètres de chaine de caractères étendues (Unicode).
LoadCursorA | user32.dll | Cette fonction permet de sélectionner un pointeur de souris.
LoadCursorFromFileA | user32.dll | Cette fonction permet de charger à partir d'un fichier un pointeur de souris.
LoadCursorFromFileW | user32.dll | Cette fonction permet de charger à partir d'un fichier un pointeur de souris avec des paramètres de chaine de caractères étendues (Unicode).
LoadCursorW | user32.dll | Cette fonction permet de sélectionner un pointeur de souris avec des paramètres de chaine de caractères étendues (Unicode).
LoadIconA | user32.dll | Cette fonction permet de charger une icône à partir d'un fichier.
LoadIconW | user32.dll | Cette fonction permet de charger une icône à partir d'un fichier avec des paramètres de chaine de caractères étendues (Unicode).
LoadImageA | user32.dll | Cette fonction permet de charger une image à partir d'une icône, un curseur ou un Bitmap.
LoadImageW | user32.dll | Cette fonction permet de charger une image à partir d'une icône, un curseur ou un Bitmap avec des paramètres de chaine de caractères étendues (Unicode).
LoadKeyboardLayoutA | user32.dll | Cette fonction permet de charger une nouvelle couche clavier dans le système.
LoadKeyboardLayoutW | user32.dll | Cette fonction permet de charger une nouvelle couche clavier dans le système avec des paramètres de chaine de caractères étendues (Unicode).
LoadLibraryA | kernel32.dll | Cette fonction permet d'effectuer le chargement du module de bibliothèque spécifié.
LoadLibraryW | kernel32.dll | Cette fonction permet d'effectuer le chargement du module de bibliothèque spécifié avec des paramètres de chaine de caractères étendue (Unicode).
LoadLibraryExA | kernel32.dll | Cette fonction permet de cartographier un module exécutable spécifié dans l'espace d'adressage du processus d'appel.
LoadLibraryExW | kernel32.dll | Cette fonction permet de cartographier un module exécutable spécifié dans l'espace d'adressage du processus d'appel avec des paramètres de chaine de caractères étendue (Unicode).
LoadMenuA | user32.dll | Cette fonction permet d'effectuer le chargement de la ressource de menu spécifié du fichier exécutable avec l'instance d'application donnée.
LoadMenuIndirectA | user32.dll | Cette fonction permet de charger le gabarit de menu spécifié en mémoire.
LoadMenuIndirectW | user32.dll | Cette fonction permet de charger le gabarit de menu spécifié en mémoire avec des paramètres de chaine de caractères étendues (Unicode).
LoadMenuW | user32.dll | Cette fonction permet d'effectuer le chargement de la ressource de menu spécifié du fichier exécutable avec l'instance d'application donnée avec des paramètres de chaine de caractères étendues (Unicode).
LoadModule | kernel32.dll | Cette fonction permet de charger et d'exécution une application Windows ou crée un nouvel instance dans un application Windows existante.
LoadResource | kernel32.dll | Cette fonction permet de charger la ressource spécifié dans la mémoire global.
LoadStringA | user32.dll | Cette fonction permet d'effectuer le chargement de la chaine de caractères spécifié d'une ressource.
LoadStringW | user32.dll | Cette fonction permet d'effectuer le chargement de la chaine de caractères spécifié d'une ressource avec des paramètres de chaine de caractères étendues (Unicode).
LocalAlloc | kernel32.dll | Cette fonction permet d'allouer le nombre d'octets spécifiés pour le tas local.
LocalCompact | kernel32.dll | Cette fonction permet de réarranger le tas local si la quantité de mémoire spécifié est disponible.
LocalFileTimeToFileTime | kernel32.dll | Cette fonction permet de convertir un temps de fichier local en temps de fichier basé sur l'UTC (Coordinated Universal Time).
LocalFlags | kernel32.dll | Cette fonction permet de demander les informations à propos de l'objet de mémoire local.
LocalFree | kernel32.dll | Cette fonction permet de demander l'objet de mémoire local et d'invalider un Handle.
LocalLock | kernel32.dll | Cette fonction permet de demander un pointeur sur l'objet de mémoire local.
LocalReAlloc | kernel32.dll | Cette fonction permet de changer la taille ou les attributs d'un objet de mémoire local spécifié.
LocalShrink | kernel32.dll | Cette fonction rapetisser le tas local du segment spécifié.
LocalSize | kernel32.dll | Cette fonction permet de demander la taille, en octets, de l'objet de mémoire local spécifié.
LocalUnlock | kernel32.dll | Cette fonction permet de déverrouiller un objet de mémoire local spécifié.
LockFile | kernel32.dll | Cette fonction permet de verrouiller une région d'un fichier ouvert.
LockFileEx | kernel32.dll | Cette fonction permet de verrouiller un rang d'octets dans un fichier ouvert avec un accès de partage ou d'exclusivité.
LockResource | kernel32.dll | Cette fonction permet de verrouiller une ressource spécifié.
LockWindowUpdate | user32.dll | Cette fonction permet d'activer ou désactiver l'affichage du contenu d'une fenêtre d'application.
LockWorkStation | user32.dll | Cette fonction permet verrouiller la poste de travail avec le mot de passe de l'utilisateur courant. Cette fonction est l'équivalent de Ctrl+Alt+Delete et «Verrouiller Station de Travail».
LogonUserA | advapi32.dll | Cette fonction permet d'effectuer une opération de connexion d'un utilisateur.
LogonUserW | advapi32.dll | Cette fonction permet d'effectuer une opération de connexion d'un utilisateur avec des paramètres de chaine de caractères étendue (Unicode).
LookupAccountNameA | advapi32.dll | Cette fonction permet d'accepter le nom d'un système ou d'un compte en entrée.
LookupAccountNameW | advapi32.dll | Cette fonction permet d'accepter le nom d'un système ou d'un compte en entrée avec des paramètres de chaine de caractères étendue (Unicode).
LookupAccountSidA | advapi32.dll | Cette fonction permet d'accepter un identificateur de sécurité (SID) en entrée
LookupAccountSidW | advapi32.dll | Cette fonction permet d'accepter un identificateur de sécurité (SID) en entrée avec des paramètres de chaine de caractères étendue (Unicode).
LookupIconIdFromDirectory | user32.dll | Cette fonction permet d'effectuer la recherche de données d'icône ou de curseur dans un icône ou curseur étant la meilleure correspondance avec le périphérique d'affichage courant.
LookupIconIdFromDirectoryEx | user32.dll | Cette fonction permet d'effectuer la recherche de données d'icône ou de curseur dans un icône ou curseur étant la meilleure correspondance avec le périphérique d'affichage courant avec des options particulières.
LookupPrivilegeDisplayNameA | advapi32.dll | Cette fonction permet de demander le nom d'affichage représenté par le privilège spécifié.
LookupPrivilegeDisplayNameW | advapi32.dll | Cette fonction permet de demander le nom d'affichage représenté par le privilège spécifié avec des paramètres de chaine de caractères étendue (Unicode).
LookupPrivilegeNameA | advapi32.dll | Cette fonction permet de demander le nom correspondant au privilège représenté par un système spécifié par identificateur local unique (LUID).
LookupPrivilegeNameW | advapi32.dll | Cette fonction permet de demander le nom correspondant au privilège représenté par un système spécifié par identificateur local unique (LUID) avec des paramètres de chaine de caractères étendue (Unicode)
LookupPrivilegeValueA | advapi32.dll | Cette fonction permet de demander l'identificateur local unique (LUID) utilisé par un système spécifié par une représentation local d'un nom de prévilège.
LookupPrivilegeValueW | advapi32.dll | Cette fonction permet de demander l'identificateur local unique (LUID) utilisé par un système spécifié par une représentation local d'un nom de prévilège avec des paramètres de chaine de caractères étendue (Unicode)
LPtoDP | gdi32.dll | Cette fonction permet de convertir les coordonnées logiques (points) en coordonnées d'un périphérique.
lstrcatA | kernel32.dll | Cette fonction permet d'ajouter une chaine de caractères à une autre.
lstrcatW | kernel32.dll | Cette fonction permet d'ajouter une chaine de caractères étendue (Unicode) à une autre.
lstrcmpA | kernel32.dll | Cette fonction permet d'effectuer la comparaison de deux chaines de caractères ASCIZ.
lstrcmpW | kernel32.dll | Cette fonction permet d'effectuer la comparaison de deux chaines de caractères étendues (Unicode).
lstrcmpiA | kernel32.dll | Cette fonction permet d'effectuer une comparaison de deux chaines de caractères sans tenir compte des majuscules ou minuscules.
lstrcmpiW | kernel32.dll | Cette fonction permet d'effectuer une comparaison de deux chaines de caractères étendues (Unicode) sans tenir compte des majuscules ou minuscules.
lstrcpyA | kernel32.dll | Cette fonction permet de copier une chaine de caractères dans un tampon.
lstrcpyW | kernel32.dll | Cette fonction permet de copier une chaine de caractères étendues (Unicode) dans un tampon.
lstrcpynA | kernel32.dll | Cette fonction permet d'effectuer une copie du nombre de caractères spécifié d'une chaine de caractères vers un tampon en mémoire.
lstrcpynW | kernel32.dll | Cette fonction permet d'effectuer une copie du nombre de caractères spécifié d'une chaine de caractères étendue (Unicode) vers un tampon en mémoire.
lstrlenA | kernel32.dll | Cette fonction permet de retourner la longueur, en octets, de la chaine de caractères spécifié.
lstrlenW | kernel32.dll | Cette fonction permet de retourner la longueur, en octets, de la chaine de caractères étendue (Unicode) spécifié.
LZClose | lz32.dll | Cette fonction permet de fermer un fichier compressé.
LZCopy | lz32.dll | Cette fonction permet de copier un fichier en dehors du fichier compressé ou permet de le compresser et de l'inclure avec le fichier compressé.
LZOpenFileA | lz32.dll | Cette fonction permet de créer, ouvrir ou supprimer un fichier compressé.
MakeAbsoluteSD | advapi32.dll | Cette fonction permet de créer un descripteur de sécurité dans un format absolue en utilisant un gabarit de format relatif de descripteur de sécurité.
MakeSelfRelativeSD | advapi32.dll | Cette fonction permet de créer un descripteur de sécurité dans un format relatif en utilisant un gabarit de format absolue de descripteur de sécurité.
MakeSureDirectoryPathExists | imagehlp.dll | Cette fonction permet de s'assurer que toutes l'arborescente d'un chemin de répertoires existent et ont été créés.
MapDialogRect | user32.dll | Cette fonction permet d'effectuer la conversion de l'unité de boite de dialogue à l'unité d'écran (pixels).
MapGenericMask | advapi32.dll | Cette fonction permet de générer une carte de masque de bon accès spécifié et de bon accès standard
MAPISendDocuments | mapi32.dll | Cette fonction permet d'effectuer l'envoie d'un message de style standard avec des fichiers attachés.
MapViewOfFile | kernel32.dll | Cette fonction permet de cartographier une vue d'un fichier dans l'espace d'adressage d'un processus appelant.
MapViewOfFileEx | kernel32.dll | Cette fonction permet de cartographier une vue d'un fichier dans l'espace d'adressage d'un processus appelant avec un adresse de mémoire spécifié.
MapVirtualKeyA | user32.dll | Cette fonction permet d'effectuer la conversion du code de touche virtuel en une valeur de caractère et un code de balayage (scan code) ou convertie le code de balayage en code de touche virtuel.
MapVirtualKeyExA | user32.dll | Cette fonction permet d'effectuer la conversion du code de touche virtuel en une valeur de caractère et un code de balayage (scan code) ou convertie le code de balayage en code de touche virtuel en utilisant des options supplémentaires.
MapVirtualKeyExW | user32.dll | Cette fonction permet d'effectuer la conversion du code de touche virtuel en une valeur de caractère et un code de balayage (scan code) ou convertie le code de balayage en code de touche virtuel en utilisant des options supplémentaires avec des paramètres de chaine de caractères étendues (Unicode).
MapVirtualKeyW | user32.dll | Cette fonction permet d'effectuer la conversion du code de touche virtuel en une valeur de caractère et un code de balayage (scan code) ou convertie le code de balayage en code de touche virtuel avec des paramètres de chaine de caractères étendues (Unicode).
MapWindowPoints | user32.dll | Cette fonction permet de convertir (cartographié) un ensemble de points d'une espace de coordonnées relatif d'une fenêtre vers une autre fenêtre d'espace de coordonnées relatif.
MaskBlt | gdi32.dll | Cette fonction permet de fusionner les données de couleur du Bitmap de la source et la destination en utilisant les opérations de masque et de raster spécifié.
mciSendStringA | winmm.dll | Cette fonction permet d'envoyer des commandes au pilote matériel MCI s'occupant du multimédia.
MenuItemFromPoint | user32.dll | Cette fonction permet de demander quel est l'item de menu situé à l'emplacement spécifié, peut importe lequel.
MessageBeep | user32.dll | Cette fonction permet de faire jouer un de ses sons standard du système d'exploitation Windows.
MessageBoxA | user32.dll | Cette fonction permet d'afficher une boite de dialogue contenant un message et des boutons d'actions.
MessageBoxExA | user32.dll | Cette fonction permet de créer, d'afficher et d'effectuer des opérations sur une boite de message.
MessageBoxExW | user32.dll | Cette fonction permet de créer, d'afficher et d'effectuer des opérations sur une boite de message avec des paramètres de chaine de caractères étendues (Unicode).
MessageBoxIndirectA | user32.dll | Cette fonction permet de créer, d'afficher et d'effectuer des opérations sur une boite de message à l'aide d'une structure de données.
MessageBoxIndirectW | user32.dll | Cette fonction permet de créer, d'afficher et d'effectuer des opérations sur une boite de message à l'aide d'une structure de données avec des paramètres de chaine de caractères étendues (Unicode).
MessageBoxW | user32.dll | Cette fonction permet d'afficher une boite de dialogue contenant un message et des boutons d'actions avec des paramètres de chaine de caractères étendues (Unicode).
ModifyMenuA | user32.dll | Cette fonction permet d'effectuer une modification sur un item de menu existant.
ModifyMenuW | user32.dll | Cette fonction permet d'effectuer une modification sur un item de menu existant avec des paramètres de chaine de caractères étendues (Unicode).
ModifyWorldTransform | gdi32.dll | Cette fonction permet de changer la transformation mondiale pour le périphérique de contexte utilisant le mode spécifié.
mouse_event | user32.dll | Cette fonction permet de provoquer un événement de déplacement de pointeur de souris ou d'actions de bouton de souris.
MoveFileA | kernel32.dll | Cette fonction permet de renommer ou déplacer un fichier ou un répertoire
MoveFileExA | kernel32.dll | Cette fonction permet de renommer un fichier existant.
MoveFileExW | kernel32.dll | Cette fonction permet de renommer un fichier existant avec un paramètre de chaine de caractères étendue (Unicode).
MoveFileW | kernel32.dll | Cette fonction permet de renommer ou déplacer un fichier ou un répertoire avec un paramètre de chaine de caractères étendue (Unicode).
MoveToEx | gdi32.dll | Cette fonction permet de changer la position du pointeur graphique
MoveWindow | user32.dll | Cette fonction permet de changer l'emplacement d'une fenêtre d'application
MsgWaitForMultipleObjects | user32.dll | Cette fonction permet de retourner un objet spécifié suite à un état, un type spécifié étant disponible de l'entrée de la file d'attente d'un processus léger ou intervalle de dépassement de délai.
MsgWaitForMultipleObjectsEx | user32.dll | Cette fonction permet de retourner un objet spécifié suite à un état, un type spécifié étant disponible de l'entrée de la file d'attente d'un processus léger ou intervalle de dépassement de délai avec des paramètres supplémentaires.
MulDiv | kernel32.dll | Cette fonction permet de diviser le produit de deux entiers long
MultiByteToWideChar | kernel32.dll | Cette fonction permet de convertir une chaine de caractères ASCII en chaine de caractères Unicode.
MultinetGetConnectionPerformanceA | mpr.dll | Cette fonction permet de demander les informations à propos des performances attendu d'une connexion utilisé pour l'accès à une ressource de réseau.
MultinetGetConnectionPerformanceW | mpr.dll | Cette fonction permet de demander les informations à propos des performances attendu d'une connexion utilisé pour l'accès à une ressource de réseau avec des paramètres de chaine de caractères étendues (Unicode).
NotifyChangeEventLog | advapi32.dll | Cette fonction permet de recevoir des avertissements d'application lorsqu'un événement écrit dans le fichier de journal de bord spécifié.
ObjectCloseAuditAlarmA | advapi32.dll | Cette fonction permet de généré des messages dans le journal de bord quand un identificateur Handle d'objet est supprimé.
ObjectCloseAuditAlarmW | advapi32.dll | Cette fonction permet de généré des messages dans le journal de bord quand un identificateur Handle d'objet est supprimé avec des paramètres de chaine de caractères étendue (Unicode).
ObjectDeleteAuditAlarmA | advapi32.dll | Cette fonction permet de supprimer un message dans le journal de bord.
ObjectDeleteAuditAlarmW | advapi32.dll | Cette fonction permet de supprimer un message dans le journal de bord avec des paramètres de chaine de caractères étendue (Unicode).
ObjectOpenAuditAlarmA | advapi32.dll | Cette fonction permet de générer des messages dans le journal de bord quand une application client tente d'obtenir l'accès à un objet ou dans créer un nouveau.
ObjectOpenAuditAlarmW | advapi32.dll | Cette fonction permet de générer des messages dans le journal de bord quand une application client tente d'obtenir l'accès à un objet ou dans créer un nouveau avec des paramètres de chaine de caractères étendue (Unicode).
ObjectPrivilegeAuditAlarmA | advapi32.dll | Cette fonction permet de générer un message dans le journal de bord quand un résultat d'un client est effectué avec des opérations de privilège sur un serveur d'application déjà ouvert avec l'identificateur Handle de l'objet.
ObjectPrivilegeAuditAlarmW | advapi32.dll | Cette fonction permet de générer un message dans le journal de bord quand un résultat d'un client est effectué avec des opérations de privilège sur un serveur d'application déjà ouvert avec l'identificateur Handle de l'objet avec des paramètres de chaine de caractères étendue (Unicode).
OemKeyScan | user32.dll | Cette fonction permet de demander le code ASCII OEM entre 0 et FFh situé dans les codes de balayage et des touches états (Ctrl, Alt et Shift).
OemToCharA | user32.dll | Cette fonction permet d'effectuer la conversion d'une chaine de caractères contenant un ensemble de caractères OEM vers du ANSI ou du Unicode.
OemToCharBuffA | user32.dll | Cette fonction permet d'effectuer la conversion d'un certain nombre de caractères OEM vers du ANSI ou du Unicode.
OemToCharBuffW | user32.dll | Cette fonction permet d'effectuer la conversion d'un certain nombre de caractères OEM vers du ANSI ou du Unicode avec des paramètres de chaine de caractères étendues (Unicode).
OemToCharW | user32.dll | Cette fonction permet d'effectuer la conversion d'une chaine de caractères contenant un ensemble de caractères OEM vers du ANSI ou du Unicode avec des paramètres de chaine de caractères étendues (Unicode).
OffsetClipRgn | gdi32.dll | Cette fonction permet de déplacer la région de clip dans le périphérique spécifié et par le déplacement spécifié.
OffsetRect | user32.dll | Cette fonction permet de déplacer le rectangle spécifié avec le nombre de déplacements spécifié.
OffsetRgn | gdi32.dll | Cette fonction permet de déplacer la région spécifié par le déplacement spécifié.
OffsetViewportOrgEx | gdi32.dll | Cette fonction permet de modifier le point de vue d'origine relatif pour un périphérique de contexte en utilisant le déplacement horizontal et vertical spécifié.
OffsetWindowOrgEx | gdi32.dll | Cette fonction permet de modifier le point de vue de la fenêtre d'origine relatif de la valeur courante.
OpenBackupEventLogA | advapi32.dll | Cette fonction permet d'ouvrir un identificateur Handle pour un événement de copie de sauvegarde du journal de bord.
OpenBackupEventLogW | advapi32.dll | Cette fonction permet d'ouvrir un identificateur Handle pour un événement de copie de sauvegarde du journal de bord avec des paramètres de chaine de caractères étendue (Unicode).
OpenClipboard | user32.dll | Cette fonction permet de commencer un traitement avec le presse-papier.
OpenDesktopA | user32.dll | Cette fonction permet de demander le Handle d'un bureau existant.
OpenDesktopW | user32.dll | Cette fonction permet de demander le Handle d'un bureau existant avec des paramètres de chaine de caractères étendues (Unicode).
OpenEventA | kernel32.dll | Cette fonction permet de demander un Handle dans objet existant d'événement nommé.
OpenEventW | kernel32.dll | Cette fonction permet de demander un Handle dans objet existant d'événement nommé avec des paramètres de chaines de caractères étendue (Unicode).
OpenEventLogA | advapi32.dll | Cette fonction permet d'ouvrir un identificateur Handle d'un événement de journal de bord.
OpenEventLogW | advapi32.dll | Cette fonction permet d'ouvrir un identificateur Handle d'un événement de journal de bord avec des paramètres de chaine de caractères étendue (Unicode).
OpenFile | kernel32.dll | Cette fonction permet de créer, d'ouvrir, de réouvrir ou de supprimer un fichier.
OpenFileMappingA | kernel32.dll | Cette fonction permet d'ouvrir un objet de cartographie de fichier nommé.
OpenFileMappingW | kernel32.dll | Cette fonction permet d'ouvrir un objet de cartographie de fichier nommé avec des paramètres de chaine de caractères étendue (Unicode).
OpenIcon | user32.dll | Cette fonction permet de passer en mode actif l'icône d'une fenêtre.
OpenInputDesktop | user32.dll | Cette fonction permet de demander le Handle d'un bureau recevant une entrée utilisateur.
OpenMutexA | kernel32.dll | Cette fonction permet d'ouvrir un objet Mutex nommé.
OpenMutexW | kernel32.dll | Cette fonction permet d'ouvrir un objet Mutex nommé avec des paramètres de chaine de caractères étendue (Unicode).
OpenPrinterA | winspool.drv | Cette fonction permet d'ouvrir la communication avec une imprimante.
OpenProcess | kernel32.dll | Cette fonction permet d'ouvrir un accès de jeton associé avec un processus.
OpenProcessToken | advapi32.dll | Cette fonction permet d'ouvrir un accès de jeton associé avec un processus.
OpenSemaphoreA | kernel32.dll | Cette fonction permet de retourner le Handle d'objet existant de sémaphore nommé.
OpenSemaphoreW | kernel32.dll | Cette fonction permet de retourner le Handle d'objet existant de sémaphore nommé avec des paramètres de chaine de caractères étendue (Unicode).
OpenThreadToken | advapi32.dll | Cette fonction permet d'ouvrir un accès de jeton associé avec un processus léger.
OpenWaitableTimerA | kernel32.dll | Cette fonction permet d'ouvrir une minuterie d'attente existante nommé.
OpenWaitableTimerW | kernel32.dll | Cette fonction permet d'ouvrir une minuterie d'attente existante nommé avec des paramètres de chaine de caractères étendue (Unicode).
OpenWindowStationA | user32.dll | Cette fonction permet de demander le Handle d'une fenêtre de station existante.
OpenWindowStationW | user32.dll | Cette fonction permet de demander le Handle d'une fenêtre de station existante avec des paramètres de chaine de caractères étendues (Unicode).
OutputDebugStringA | kernel32.dll | Cette fonction permet d'envoyer une chaine de caractères au débogueur de l'application courante.
OutputDebugStringW | kernel32.dll | Cette fonction permet d'envoyer une chaine de caractères au débogueur de l'application courante avec des paramètres de chaine de caractères étendue (Unicode).
PackDDElParam | user32.dll | Cette fonction permet de compacté la valeur DDE spécifié dans une structure interne utilisé dans le partage de données DDE entre le traitement de processus.
PaintDesktop | user32.dll | Cette fonction permet de remplir le bureau avec une couleur ou un papier-peint.
PaintRgn | gdi32.dll | Cette fonction permet de remplir une région, en utilisant la brosse courante, pour un périphérique de contexte spécifié.
PatBlt | gdi32.dll | Cette fonction permet de créer une palette de bits pour un périphérique spécifié.
PathAddBackslashA | shlwapi.dll | Cette fonction permet d'ajouter une barre oblique inversé à la fin du chemin de répertoire spécifié.
PathAddExtension | shlwapi.dll | Cette fonction permet d'ajouter une extension à nom de fichiers.
PathAppendA | shlwapi.dll | Cette fonction permet d'ajouter un chemin de répertoire à la fin d'un autre chemin de répertoire.
PathBuildRootA | shlwapi.dll | Cette fonction permet de créer un répertoire racine pour unité disque spécifié.
PathCanonicalizeA | shlwapi.dll | Cette fonction permet de transformer un chemin de répertoire de sa forme absolue à relative, c'est-à-dire de remplacer des "../" pour atteinte le répertoire en court par exemple.
PathCombine | shlwapi.dll | Cette fonction permet d'ajouter un chemin de répertoire à la fin d'un autre chemin de répertoire.
PathCommonPrefix | shlwapi.dll | Cette fonction permet d'effectuer la comparaison de deux répertoires et de vérifier les préfixes communs.
PathCompactPathA | shlwapi.dll | Cette fonction permet de réduire la longueur en pixel d'un chemin de répertoire en remplaçant la partie trop longue par des abréviations pour qu'il soit affichable à l'écran par exemple.
PathCompactPathExA | shlwapi.dll | Cette fonction permet de réduire la longueur en caractères d'un chemin de répertoire en remplaçant la partie trop longue par des abréviations pour qu'il soit affichable à l'écran par exemple.
PathCreateFromUrlA | shlwapi.dll | Cette fonction permet de convertir un URL sous sa forme du système d'exploitation de style DOS.
PathFindOnPathA | shlwapi.dll | Cette fonction permet d'effectuer la recherche d'un nom de fichier dans un répertoire.
PathGetDriveNumberA | shlwapi.dll | Cette fonction permet de demander le numéro de l'unité disque contenu dans un chemin de répertoire.
PathIsDirectoryEmptyA | shlwapi.dll | Cette fonction permet de demander si le répertoire spécifier est vide.
PathIsSystemFolder | shlwapi.dll | Cette fonction permet de demander si le répertoire spécifier à l'attribut de dossier système.
PathIsUNCA | shlwapi.dll | Cette fonction permet de demander si le répertoire est un répertoire UNC (Universal Naming Convention) valide.
PathIsUNCServerA | shlwapi.dll | Cette fonction permet de demander si le répertoire est un répertoire UNC (Universal Naming Convention) valide pour un serveur.
PathIsURLA | shlwapi.dll | Cette fonction permet de demander si le répertoire est un répertoire URL valide.
PathToRegion | gdi32.dll | Cette fonction permet de créer un chemin vers une région sélectionné dans le périphérique de contexte spécifié.
PathUndecorateA | shlwapi.dll | Cette fonction permet d'illiminer les séquences à numéro d'un nom fichier.
PathUnmakeSystemFolderA | shlwapi.dll | Cette fonction permet d'enlever l'attribut système d'un répertoire spécifié.
PdhAddCounterA | pdh.dll | Cette fonction permet d'ajouter le compteur spécifié à la requête pour les compteurs de performance.
PdhAddCounterW | pdh.dll | Cette fonction permet d'ajouter le compteur spécifié à la requête pour les compteurs de performance avec des paramètres de chaine de caractères étendue (Unicode).
PdhAddEnglishCounterA | pdh.dll | Cette fonction permet d'ajouter un compteur dans un langage humain neutre à la requête pour le compteur de performance.
PdhAddEnglishCounterW | pdh.dll | Cette fonction permet d'ajouter un compteur dans un langage humain neutre à la requête pour le compteur de performance avec des paramètres de chaine de caractères étendue (Unicode).
PdhAddRelogCounter | pdh.dll | Cette fonction permet d'effectuer la liaison d'un ou plusieurs fichiers binaires de journal de bord afin d'obtenir un ensemble dans le but de lire les données.
PdhAddV1Counter | pdh.dll | Cette fonction permet d'ajouter la première valeur pour le compteur de performance.
PdhAddV2Counter | pdh.dll | Cette fonction permet d'ajouter la seconde valeur pour le compteur de performance.
PdhBindInputDataSourceA | pdh.dll | Cette fonction permet d'effectuer la liaison d'un ou plusieurs fichiers binaires de journal de bord source afin d'obtenir un ensemble dans le but de lire les données.
PdhBindInputDataSourceW | pdh.dll | Cette fonction permet d'effectuer la liaison d'un ou plusieurs fichiers binaires de journal de bord source afin d'obtenir un ensemble dans le but de lire les données avec des paramètres de chaine de caractères étendue (Unicode).
PdhBrowseCountersA | pdh.dll | Cette fonction permet d'afficher une boite de dialogue de navigation de compteur que l'utilisateur peut utiliser afin de sélectionner un ou plusieurs compteurs quand il l'ajoute à la requête.
PdhBrowseCountersHA | pdh.dll | Cette fonction permet d'afficher une boite de dialogue de navigation de compteur que l'utilisateur peut utiliser afin de sélectionner un ou plusieurs compteurs quand il l'ajoute à la requête en utilisant un Handle.
PdhBrowseCountersHW | pdh.dll | Cette fonction permet d'afficher une boite de dialogue de navigation de compteur que l'utilisateur peut utiliser afin de sélectionner un ou plusieurs compteurs quand il l'ajoute à la requête en utilisant un Handle avec des paramètres de chaine de caractères étendue (Unicode).
PdhBrowseCountersW | pdh.dll | Cette fonction permet d'afficher une boite de dialogue de navigation de compteur que l'utilisateur peut utiliser afin de sélectionner un ou plusieurs compteurs quand il l'ajoute à la requête avec des paramètres de chaine de caractères étendue (Unicode).
PdhCalculateCounterFromRawValue | pdh.dll | Cette fonction permet d'effectuer le calcul des valeurs affichables de 2 valeurs brutes de compteur.
PdhCloseLog | pdh.dll | Cette fonction permet d'effectuer la fermeture d'un fichier de journal bord spécifié.
PdhCloseQuery | pdh.dll | Cette fonction permet de fermer toutes les compteurs contenant la requête spécifié, ferme tous les gestionnaires ayant la requête et libère toute la mémoire associé avec cette requête.
PdhCollectQueryData | pdh.dll | Cette fonction permet de collecter la donnée de valeur brute courante pour tous les compteurs dans la requête spécifié et met à jour le code d'état pour chaque compteur.
PdhCollectQueryDataEx | pdh.dll | Cette fonction permet d'utiliser un processus léger séparant la donnée de valeur brute courante pour tous les compteurs dans la requête spécifié.
PdhCollectQueryDataWithTime | pdh.dll | Cette fonction permet de collecter la données de valeur brute courante pour tous les compteurs dans la requête spécifié et met à jour le code d'état pour chaque compteur.
PdhComputeCounterStatistics | pdh.dll | Cette fonction permet d'effectuer les calculs statistiques pour un compteur dans un tableau de valeurs brute.
PdhConnectMachineA | pdh.dll | Cette fonction permet d'effectuer une connexion vers l'ordinateur spécifié pour les compteurs de performance.
PdhConnectMachineW | pdh.dll | Cette fonction permet d'effectuer une connexion vers l'ordinateur spécifié pour les compteurs de performance avec des paramètres de chaine de caractères étendue (Unicode).
PdhCreateSQLTablesA | pdh.dll | Cette fonction permet de créer des tables SQL pour le compteur performance.
PdhCreateSQLTablesW | pdh.dll | Cette fonction permet de créer des tables SQL pour le compteur performance avec des paramètres de chaine de caractères étendue (Unicode).
PdhEnumObjectItemsA | pdh.dll | Cette fonction permet de demander l'objet de compteur spécifié et les noms d'instance existant dans l'ordinateur spécifié ou le fichier de journal de bord spécifié.
PdhEnumObjectItemsW | pdh.dll | Cette fonction permet de demander l'objet de compteur spécifié et les noms d'instance existant dans l'ordinateur spécifié ou le fichier de journal de bord spécifié avec des paramètres de chaine de caractères étendue (Unicode).
PeekConsoleInputA | kernel32.dll | Cette fonction permet d'effectuer la lecture des données du tampon d'entrée de la console spécifié sans retirer le contenu lue du tampon.
PeekConsoleInputW | kernel32.dll | Cette fonction permet d'effectuer la lecture des données du tampon d'entrée de la console spécifié sans retirer le contenu lue du tampon avec des paramètres de chaine de caractères étendue (Unicode).
PeekMessageA | user32.dll | Cette fonction permet de poster un message dans une fenêtre de file d'attente de message et retourne sans attendre la correspondance à un processus de message.
PeekMessageW | user32.dll | Cette fonction permet de poster un message dans une fenêtre de file d'attente de message et retourne sans attendre la correspondance à un processus de message avec des paramètres de chaine de caractères étendue (Unicode).
PeekNamedPipe | kernel32.dll | Cette fonction permet de copier les données d'un tuyau nommé ou anonyme dans un tampon sans le retirer du tuyau.
Pie | gdi32.dll | Cette fonction permet de dessiner une pointe de tarte en effectuant un arc elliptique d'un centre et de deux points joins par des lignes.
PlayEnhMetaFile | gdi32.dll | Cette fonction permet d'afficher l'image entreposé dans le fichier méta de format étendue spécifié.
PlayEnhMetaFileRecord | gdi32.dll | Cette fonction permet de jouer un enregistrement de fichier méta étendue par exécution de fonction GDI (Graphics Device Interface) identifié par l'enregistrement.
PlayMetaFile | gdi32.dll | Cette fonction permet de jouer le contenu d'un fichier méta de format Windows spécifié dans un périphérique spécifié.
PlayMetaFileRecord | gdi32.dll | Cette fonction permet de jouer un enregistrement d'un fichier méta de format Windows par exécution du GDI contenu dans l'enregistrement.
PlaySoundA | winmm.dll | Cette fonction permet de faire jouer un fichier de son de format Wave (.WAV).
PlgBlt | gdi32.dll | Cette fonction permet d'effectuer un traitement de transfert de bloc de bits d'une donnée de bits de couleurs d'un rectangle spécifié dans une source de périphérique de contexte vers la destination de périphérique de contexte de parallélogramme spécifié.
PolyBezier | gdi32.dll | Cette fonction permet de dessiner une ou plusieurs courbes de Bézier.
PolyBezierTo | gdi32.dll | Cette fonction permet de dessiner une ou plusieurs courbes de Bézier spécifié.
PolyDraw | gdi32.dll | Cette fonction permet de dessiner un ensemble de ligne de segments et de courbes de Bézier.
PolyPolygon | gdi32.dll | Cette fonction permet de créer deux ou plusieurs polygone étant rempli par un mode de remplissage de polygone.
PolyTextOutA | gdi32.dll | Cette fonction permet de dessiner une chaine de caractères en utilisant la police de caractères et les couleurs textes courante dans le périphérique de contexte spécifié.
PolyTextOutW | gdi32.dll | Cette fonction permet de dessiner une chaine de caractères en utilisant la police de caractères et les couleurs textes courante dans le périphérique de contexte spécifié avec des paramètres de chaine de caractères étendues.
Polygon | gdi32.dll | Cette fonction permet de dessiner un polygone de deux ou plusieurs points (sommets) connectés par des lignes.
Polyline | gdi32.dll | Cette fonction permet de dessiner un ensemble de segments de lignes, connecté par les points spécifiés.
PolylineTo | gdi32.dll | Cette fonction permet de dessiner une ou plusieurs lignes droite.
PostMessageA | user32.dll | Cette fonction permet d'envoyer un message à un objet du système d'exploitation Windows.
PostMessageW | user32.dll | Cette fonction permet d'envoyer un message à un objet du système d'exploitation Windows avec des paramètres de chaine de caractères étendues (Unicode).
PostQueuedCompletionStatus | kernel32.dll | Cette fonction permet de poster une paquet d'achèvement d'entrée/sortie vers un port d'achèvement d'entrée/sortie.
PostQuitMessage | user32.dll | Cette fonction permet de poster un message à Windows afin d'indiquer que l'application reçoit une requête de terminaison d'exécution (quitte).
PostThreadMessageA | user32.dll | Cette fonction permet de poster un message dans la file d'attente du processus léger spécifié et retourne sans attendre que le processus léger traite le message.
PostThreadMessageW | user32.dll | Cette fonction permet de poster un message dans la file d'attente du processus léger spécifié et retourne sans attendre que le processus léger traite le message avec des paramètres de chaine de caractères étendues (Unicode).
PrepareTape | kernel32.dll | Cette fonction permet de préparer le ruban pour être accédé ou enlevé.
PrintDlgA | comdlg32.dll | Cette fonction permet d'afficher une boite de dialogue d'impression.
PrinterProperties | winspool.drv | Cette fonction permet d'afficher une boite de dialogue de propriété de l'imprimante.
PrivilegeCheck | advapi32.dll | Cette fonction permet de tester le contexte de sécurité représenté par un accès de jeton spécifié contenu dans un privilège spécifié.
PrivilegedServiceAuditAlarmA | advapi32.dll | Cette fonction permet de générer un message de journal de bord quand une opération de service de privilège système s'effectue.
PrivilegedServiceAuditAlarmW | advapi32.dll | Cette fonction permet de générer un message de journal de bord quand une opération de service de privilège système s'effectue avec des paramètres de chaine de caractères étendue (Unicode).
Process32First | kernel32.dll | Cette fonction permet de demander le premier processus provenant de la liste contenu dans une photo du système d'exploitation.
Process32Next | kernel32.dll | Cette fonction permet de demander le processus suivant provenant de la liste contenu dans une photo du système d'exploitation.
PtInRect | user32.dll | Cette fonction permet de déterminer si le point spécifié est lié avec le rectangle spécifié.
PtInRegion | gdi32.dll | Cette fonction permet de demander si un point spécifié est dans une région spécifié.
PtVisible | gdi32.dll | Cette fonction permet de demander si le point spécifié est dans la région clip d'un périphérique de contexte.
PulseEvent | kernel32.dll | Cette fonction permet de fournir une simple opération fixant l'état d'un objet d'événement spécifié et réinitialisant après qu'un délai d'attente de processus approprié s'est produit.
PurgeComm | kernel32.dll | Cette fonction permet de débarrasser de tous les caractères d'un tampon de sortie ou d'entrée d'une ressource de communication spécifié.
PwdChangePasswordA | mpr.dll | Cette fonction permet de modifier le mot de passe de l'utilisateur ou d'un fournisseur du système d'exploitation.
QueryDosDeviceA | kernel32.dll | Cette fonction permet à une application de demander des informations à propre d'un nom de périphérique DOS.
QueryDosDeviceW | kernel32.dll | Cette fonction permet à une application de demander des informations à propre d'un nom de périphérique DOS avec des paramètres de chaine de caractères étendue (Unicode).
QueryPerformanceCounter | kernel32.dll | Cette fonction permet de demander la valeur actuel du compteur de haute performance de la machine.
QueryPerformanceFrequency | kernel32.dll | Cette fonction permet de demander la valeur de la fréquence du compteur de haute performance de la machine.
QueueUserAPC | kernel32.dll | Cette fonction permet d'ajouter une objet de procédure d'appel désynchronisée (APC) en mode utilisateur dans une file d'attente APC d'un processus léger spécifié.
RaiseException | kernel32.dll | Cette fonction permet de déclencher une exception dans le processus léger appelant.
RasEnumEntriesA | rasapi32.dll | Cette fonction permet de demander la liste de tous les noms d'entrées contenu dans le carnet pour les connexions téléphoniques à distance.
ReadConsoleA | kernel32.dll | Cette fonction permet d'effectuer la lecture d'un caractère en provenance de la console.
ReadConsoleW | kernel32.dll | Cette fonction permet d'effectuer la lecture d'un caractère en provenance de la console avec des paramètres de chaine de caractères étendue (Unicode).
ReadConsoleInputA | kernel32.dll | Cette fonction permet d'effectuer la lecture de données du tampon d'entrée d'une console et retire les données du tampon.
ReadConsoleInputW | kernel32.dll | Cette fonction permet d'effectuer la lecture de données du tampon d'entrée d'une console et retire les données du tampon avec des paramètres de chaine de caractères étendue (Unicode).
ReadConsoleOutputA | kernel32.dll | Cette fonction permet d'effectuer la lecture de données de caractère et de couleur d'attribut dans un bloc rectangulaire d'une cellule de caractères d'un tampon de console d'écran et écrire le résultat de ses données dans un tampon spécifié.
ReadConsoleOutputW | kernel32.dll | Cette fonction permet d'effectuer la lecture de données de caractère et de couleur d'attribut dans un bloc rectangulaire d'une cellule de caractères d'un tampon de console d'écran et écrire le résultat de ses données dans un tampon spécifié avec des paramètres de chaine de caractères étendue (Unicode).
ReadConsoleOutputAttribute | kernel32.dll | Cette fonction permet de copier le nombre spécifié dans la couleur d'attribut d'arrière-plan ou de premier plan d'une cellule consécutive d'un tampon de console d'écran en débutant à la position spécifié.
ReadConsoleOutputCharacterA | kernel32.dll | Cette fonction permet de copier un nombre de caractères d'une cellule consécutif d'un tampon de console écran en débutant à la position spécifié.
ReadConsoleOutputCharacterW | kernel32.dll | Cette fonction permet de copier un nombre de caractères d'une cellule consécutif d'un tampon de console écran en débutant à la position spécifié avec des paramètres de chaine de caractères étendue (Unicode).
ReadDirectoryChangesW | kernel32.dll | Cette fonction permet de demander les informations descriptives de changement ayant eu lieu dans le répertoire spécifié.
ReadEventLogA | advapi32.dll | Cette fonction permet de lire un nombre d'entrées spécifié dans un journal de bord des événements.
ReadEventLogW | advapi32.dll | Cette fonction permet de lire un nombre d'entrées spécifié dans un journal de bord des événements avec des paramètres de chaine de caractères étendue (Unicode).
ReadFile | kernel32.dll | Cette fonction permet d'effectuer la lecture d'un fichier, en débutant à la position spécifié par le pointeur de fichier.
ReadFileEx | kernel32.dll | Cette fonction permet d'effectuer la lecture de données d'un fichier désynchronisé.
ReadProcessMemory | kernel32.dll | Cette fonction permet d'effectuer la lecture de mémoire dans un processus spécifié.
RealizePalette | gdi32.dll | Cette fonction permet de cartographier l'entrée de palette de la palette logique courante de la palette système.
Rectangle | gdi32.dll | Cette fonction permet d'afficher un rectangle.
RectInRegion | gdi32.dll | Cette fonction permet de demander si une partie du rectangle spécifié est dans une des limites d'une région spécifié.
RectVisible | gdi32.dll | Cette fonction permet de demander n'importe quel partie d'un rectangle spécifié dans une région de clip d'un périphérique de contexte spécifié.
RedrawWindow | user32.dll | Cette fonction permet de mettre à jour le rectangle ou la région spécifié de la région de la fenêtre client.
RegCloseKey | advapi32.dll | Cette fonction permet de fermer le Handle de la clef de registre spécifié.
RegConnectRegistryA | advapi32.dll | Cette fonction permet d'établir une connexion avec un registre de Handle prédéfinie ou autre ordinateur.
RegConnectRegistryW | advapi32.dll | Cette fonction permet d'établir une connexion avec un registre de Handle prédéfinie ou autre ordinateur avec des paramètres de chaine de caractères étendue (Unicode).
RegCreateKeyA | advapi32.dll | Cette fonction permet de créer la clef de registre spécifié. Si la clef existe dans les registres, la fonction l'ouvre.
RegCreateKeyW | advapi32.dll | Cette fonction permet de créer la clef de registre spécifié avec des paramètres de chaine de caractères étendue (Unicode). Si la clef existe dans les registres, la fonction l'ouvre.
RegCreateKeyExA | advapi32.dll | Cette fonction permet de créer une clef de registre spécifié avec des systèmes de la famille NT. Si la clef existe dans les registres, la fonction l'ouvre.
RegCreateKeyExW | advapi32.dll | Cette fonction permet de créer une clef de registre spécifié avec des systèmes de la famille NT avec des paramètres de chaine de caractères étendue (Unicode). Si la clef existe dans les registres, la fonction l'ouvre.
RegDeleteKeyA | advapi32.dll | Cette fonction permet de supprimer la clef de registre spécifié.
RegDeleteKeyW | advapi32.dll | Cette fonction permet de supprimer la clef de registre spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegDeleteValueA | advapi32.dll | Cette fonction permet de supprimer la valeur du nom spécifié dans la clef de la base de registre.
RegDeleteValueW | advapi32.dll | Cette fonction permet de supprimer la valeur du nom spécifié dans la clef de la base de registre avec des paramètres de chaine de caractères étendue (Unicode).
RegEnumKeyA | advapi32.dll | Cette fonction permet d'énuméré les sous-clefs d'une clef de registre ouverte spécifié.
RegEnumKeyW | advapi32.dll | Cette fonction permet d'énuméré les sous-clefs d'une clef de registre ouverte spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegEnumKeyExA | advapi32.dll | Cette fonction permet d'énuméré les sous-clefs d'une clef de registre ouverte spécifié avec des systèmes de la famille NT.
RegEnumKeyExW | advapi32.dll | Cette fonction permet d'énuméré les sous-clefs d'une clef de registre ouverte spécifié avec des systèmes de la famille NT avec des paramètres de chaine de caractères étendue (Unicode).
RegEnumValueA | advapi32.dll | Cette fonction permet d'énuméré les valeurs pour la clef de registre ouverte spécifié.
RegEnumValueW | advapi32.dll | Cette fonction permet d'énuméré les valeurs pour la clef de registre ouverte spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegFlushKey | advapi32.dll | Cette fonction permet d'écrire tous les attributs de la clef de la base de registre ouverte spécifié.
RegGetKeySecurity | advapi32.dll | Cette fonction permet de copier le descripteur de sécurité de la clef de registre ouverte spécifié.
RegisterClassA | user32.dll | Cette fonction permet d'effectuer l'enregistrement d'une classe de fenêtre subséquente aux appels des fonctions CreateWindow ou CreateWindowEx.
RegisterClassExA | user32.dll | Cette fonction permet d'effectuer l'enregistrement d'une classe de fenêtre subséquente aux appels des fonctions CreateWindow ou CreateWindowEx avec des options supplémentaires.
RegisterClassExW | user32.dll | Cette fonction permet d'effectuer l'enregistrement d'une classe de fenêtre subséquente aux appels des fonctions CreateWindow ou CreateWindowEx avec des options supplémentaires et des paramètres de chaine de caractères étendues (Unicode).
RegisterClassW | user32.dll | Cette fonction permet d'effectuer l'enregistrement d'une classe de fenêtre subséquente aux appels des fonctions CreateWindow ou CreateWindowEx avec des paramètres de chaine de caractères étendues (Unicode).
RegisterClipboardFormatA | user32.dll | Cette fonction permet d'enregistrer un nouveau format de presse-papier.
RegisterClipboardFormatW | user32.dll | Cette fonction permet d'enregistrer un nouveau format de presse-papier avec des paramètres de chaine de caractères étendues (Unicode).
RegisterDeviceNotificationA | user32.dll | Cette fonction permet d'enregistrer un périphérique ou un type de périphérique pour que la fenêtre reçoivent des avertissements de changements.
RegisterHotKey | user32.dll | Cette fonction permet de définir l'état des touches de combinaison (Alt, Ctrl, Shift) pour le processus léger courant.
RegisterServiceProcess | kernel32.dll | Cette fonction permet de cacher un programme de façon à ce qu'il ne soit pas afficher lorsqu'on appuis sur Ctrl+Alt+Delete pour voir la liste des programmes dans le Gestionnaire de tâche.
RegisterWindowMessageA | user32.dll | Cette fonction permet de définir une nouvelle fenêtre de message garantissant qu'elle est unique au système.
RegisterWindowMessageW | user32.dll | Cette fonction permet de définir une nouvelle fenêtre de message garantissant qu'elle est unique au système avec des paramètres de chaine de caractères étendues (Unicode).
RegLoadKeyA | advapi32.dll | Cette fonction permet de créer une sous-clef dans «HKEY_USER» ou «HKEY_LOCAL_MACHINE» et d'entreposer les informations d'enregistrement dans le fichier spécifié d'une sous-clef.
RegLoadKeyW | advapi32.dll | Cette fonction permet de créer une sous-clef dans «HKEY_USER» ou «HKEY_LOCAL_MACHINE» et d'entreposer les informations d'enregistrement dans le fichier spécifié d'une sous-clef avec des paramètres de chaine de caractères étendue (Unicode).
RegNotifyChangeKeyValue | advapi32.dll | Cette fonction permet d'indiquer quand une clef de registre, ou élément rattaché à celle-ci, a changé.
RegOpenKeyA | advapi32.dll | Cette fonction permet d'ouvrir une clef spécifié dans une base de registre.
RegOpenKeyW | advapi32.dll | Cette fonction permet d'ouvrir une clef spécifié dans une base de registre avec des paramètres de chaine de caractères étendue (Unicode).
RegOpenKeyExA | advapi32.dll | Cette fonction permet d'ouvrir une clef spécifié dans une base de registre.
RegOpenKeyExW | advapi32.dll | Cette fonction permet d'ouvrir une clef spécifié dans une base de registre avec des paramètres de chaine de caractères étendue (Unicode).
RegQueryInfoKeyA | advapi32.dll | Cette fonction permet de demander les informations d'une clef de registre spécifié.
RegQueryInfoKeyW | advapi32.dll | Cette fonction permet de demander les informations d'une clef de registre spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegQueryMultipleValuesA | advapi32.dll | Cette fonction permet de demander le type et la donnée pour une liste de noms de valeur associé avec une clef de registre ouverte.
RegQueryMultipleValuesW | advapi32.dll | Cette fonction permet de demander le type et la donnée pour une liste de noms de valeur associé avec une clef de registre ouverte avec des paramètres de chaine de caractères étendue (Unicode).
RegQueryValueA | advapi32.dll | Cette fonction permet de demander la valeur associé avec une valeur non-nommé pour la clef du registre spécifié.
RegQueryValueW | advapi32.dll | Cette fonction permet de demander la valeur associé avec une valeur non-nommé pour la clef du registre spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegQueryValueExA | advapi32.dll | Cette fonction permet de demander la valeur associé avec une valeur non-nommé pour la clef du registre spécifié avec des systèmes de la famille NT.
RegQueryValueExW | advapi32.dll | Cette fonction permet de demander la valeur associé avec une valeur non-nommé pour la clef du registre spécifié avec des systèmes de la famille NT avec des paramètres de chaine de caractères étendue (Unicode).
RegReplaceKeyA | advapi32.dll | Cette fonction permet de remplacer un fichier de copie de sauvegarde d'un clef et tous les sous-clef d'une autre fichier.
RegReplaceKeyW | advapi32.dll | Cette fonction permet de remplacer un fichier de copie de sauvegarde d'un clef et tous les sous-clef d'une autre fichier avec des paramètres de chaine de caractères étendue (Unicode).
RegRestoreKeyA | advapi32.dll | Cette fonction permet de lire des informations registre dans un fichier spécifié et de copier la clef spécifié.
RegRestoreKeyW | advapi32.dll | Cette fonction permet de lire des informations registre dans un fichier spécifié et de copier la clef spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegSaveKeyA | advapi32.dll | Cette fonction permet de sauvegarder tous les clefs, sous-clefs et les valeurs spécifié dans un nouveau fichier.
RegSaveKeyW | advapi32.dll | Cette fonction permet de sauvegarder tous les clefs, sous-clefs et les valeurs spécifié dans un nouveau fichier avec des paramètres de chaine de caractères étendue (Unicode).
RegSetKeySecurity | advapi32.dll | Cette fonction permet fixer la sécurité d'une clef de registre ouvert.
RegSetValueA | advapi32.dll | Cette fonction permet d'associer une valeur avec une clef spécifié.
RegSetValueW | advapi32.dll | Cette fonction permet d'associer une valeur avec une clef spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegSetValueExA | advapi32.dll | Cette fonction permet d'entreposer les données d'un champs de valeur d'une clef de registre ouvert.
RegSetValueExW | advapi32.dll | Cette fonction permet d'entreposer les données d'un champs de valeur d'une clef de registre ouvert avec des paramètres de chaine de caractères étendue (Unicode).
RegUnLoadKeyA | advapi32.dll | Cette fonction permet de décharger la clef et sous-clefs de registre spécifié
RegUnLoadKeyW | advapi32.dll | Cette fonction permet de décharger la clef et sous-clefs de registre spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegisterEventSourceA | advapi32.dll | Cette fonction permet de retourner l'identificateur Handle utilisé avec la fonction d'événement «ReportEvent» du journal de bord.
RegisterEventSourceW | advapi32.dll | Cette fonction permet de retourner l'identificateur Handle utilisé avec la fonction d'événement «ReportEvent» du journal de bord avec des paramètres de chaine de caractères étendue (Unicode).
ReleaseCapture | user32.dll | Cette fonction permet de relâcher la capture de souris et de restituer l'entrée de traitement normal.
ReleaseDC | user32.dll | Cette fonction permet de relâcher un périphérique de contexte, de libérer son utilisation pour les autres applications.
ReleaseMutex | kernel32.dll | Cette fonction permet de relâcher la propriété de l'objet Mutex spécifié.
ReleaseSemaphore | kernel32.dll | Cette fonction permet d'augmenter le compteur de l'objet de sémaphore spécifié par une quantité spécifié.
RemoveDirectoryA | kernel32.dll | Cette fonction permet de supprimer un répertoire.
RemoveDirectoryW | kernel32.dll | Cette fonction permet de supprimer un répertoire avec les paramètres de chaine de caractères étendues (Unicode).
RemoveDirectoryTransactedA | kernel32.dll | Cette fonction permet de supprimer un répertoire d'une opération de transaction.
RemoveDirectoryTransactedW | kernel32.dll | Cette fonction permet de supprimer un répertoire d'une opération de transaction avec des paramètres de chaine de caractères étendue (Unicode).
RemoveFontResourceA | gdi32.dll | Cette fonction permet d'enlever un ajout de ressource de police de caractères d'un fichier spécifié ou d'une table de police de caractères de Windows.
RemoveFontResourceW | gdi32.dll | Cette fonction permet d'enlever un ajout de ressource de police de caractères d'un fichier spécifié ou d'une table de police de caractères de Windows avec des paramètres de chaine de caractères étendues (Unicode).
RemoveMenu | user32.dll | Cette fonction permet de supprimer un item de menu déroulant.
RemovePropA | user32.dll | Cette fonction permet d'enlever une entrée de la liste de propriété de la fenêtre spécifié.
RemovePropW | user32.dll | Cette fonction permet d'enlever une entrée de la liste de propriété de la fenêtre spécifié avec des paramètres de chaine de caractères étendues (Unicode).
ReplyMessage | user32.dll | Cette fonction permet de répondre à un message envoyé par la fonction SendMessage sans rendre le contrôle à la fonction ayant appelé SendMessage.
ReportEventA | advapi32.dll | Cette fonction permet d'écrire une entrée à la fin du journal de bord des événements spécifié.
ReportEventW | advapi32.dll | Cette fonction permet d'écrire une entrée à la fin du journal de bord des événements spécifié avec des paramètres de chaine de caractères étendue (Unicode).
ResetDCA | gdi32.dll | Cette fonction permet de mettre à jour le périphérique de contexte, en se basant sur les informations de la structure spécifié.
ResetDCW | gdi32.dll | Cette fonction permet de mettre à jour le périphérique de contexte, en se basant sur les informations de la structure spécifié avec des paramètres de chaine de caractères étendues (Unicode).
ResetEvent | kernel32.dll | Cette fonction permet de fixer l'état de l'objet d'événement spécifié dans un sans signal.
ResizePalette | gdi32.dll | Cette fonction permet de changer la taille de la palette logique spécifié.
RestoreDC | gdi32.dll | Cette fonction permet de restaurer un périphérique de contexte à l'état précédent.
RestoreMyDocsFolder | mydocs.dll | Cette fonction permet de recréer l'icône de «Mes Documents» sur le bureau du système d'exploitation Windows.
ResumeThread | kernel32.dll | Cette fonction permet de décrémenter le compteur de processus léger suspendu.
ReuseDDElParam | user32.dll | Cette fonction permet d'allouer une application vers la réutilisation de paramètre DDE compacté spécifié et en réallouant un nouveau paquet spécifié.
RevertToSelf | advapi32.dll | Cette fonction permet de terminé la personnification d'une application client.
RtlFillMemory | kernel32.dll | Cette fonction permet de remplir une zone de mémoire avec une valeur spécifié.
RtlMoveMemory | kernel32.dll | Cette fonction permet de copier un bloc de mémoire vers un autre emplacement mémoire.
RoundRect | gdi32.dll | Cette fonction permet de dessiner un rectangle avec les coins arrondies, en utilisant le crayon courant.
SaveDC | gdi32.dll | Cette fonction permet de sauvegarder l'état courant du périphérique de contexte courant en copiant les informations d'état (clip de région, sélection d'objets, et mode de cartographie) dans la pile de contexte.
ScaleViewportExtEx | gdi32.dll | Cette fonction permet de modifier les extensions du point de vue relative avec des valeurs courante.
ScaleWindowExtEx | gdi32.dll | Cette fonction permet de modifier les extensions de la fenêtre de périphérique de contexte en utilisant le ratio formé par le multiplicateur et le diviseur spécifié.
ScreenToClient | user32.dll | Cette fonction permet de convertir les coordonnées d'écrans d'un point spécifié de l'écran à des coordonnées clients.
ScrollConsoleScreenBufferA | kernel32.dll | Cette fonction permet de déplacer un bloc de données dans un tampon d'écran.
ScrollConsoleScreenBufferW | kernel32.dll | Cette fonction permet de déplacer un bloc de données dans un tampon d'écran avec des paramètres de chaine de caractères étendues (Unicode).
ScrollDC | user32.dll | Cette fonction permet de faire défiler un rectangle d'un nombre de bits horizontal et vertical.
ScrollWindow | user32.dll | Cette fonction permet d'effectuer un défilement du contenu d'une région de fenêtre client.
ScrollWindowEx | user32.dll | Cette fonction permet d'effectuer un défilement du contenu d'une région de fenêtre client avec des options supplémentaires.
SearchPathA | kernel32.dll | Cette fonction permet d'effectuer une recherche dans le fichier spécifié.
SearchPathW | kernel32.dll | Cette fonction permet d'effectuer une recherche dans le fichier spécifié avec des paramètres de chaine de caractères étendues (Unicode).
SearchTreeForFile | imagehlp.dll | Cette fonction permet d'effectuer la recherche d'un fichier dans un arbre de répertoire.
SelectClipPath | gdi32.dll | Cette fonction permet de sélectionner le chemin courant dans la région de capture d'un périphérique de contexte en combinant la nouvelle région avec n'importe quel région de capture existante par utilisation de mode spécifié.
SelectClipRgn | gdi32.dll | Cette fonction permet de sélectionner une région spécifié et la capture de région courant pour un périphérique de contexte courant.
SelectObject | gdi32.dll | Cette fonction permet de sélectionner un objet dans le périphérique de contexte spécifié.
SelectPalette | gdi32.dll | Cette fonction permet de sélectionner la palette logique dans le périphérique de contexte donnée.
SendDlgItemMessageA | user32.dll | Cette fonction permet d'envoyer un message à un contrôle de boite de dialogue.
SendDlgItemMessageW | user32.dll | Cette fonction permet d'envoyer un message à un contrôle de boite de dialogue avec des paramètres de chaine de caractères étendues (Unidcode).
SendMessageA | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message à une fenêtre où à un objet d'une fenêtre.
SendMessageCallbackA | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message spécifié vers une ou des fenêtres.
SendMessageCallbackW | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message spécifié vers une ou des fenêtres avec des paramètres de chaine de caractères étendues (Unicode).
SendMessageTimeoutA | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message avec un dépassement de délai spécifié vers une ou des fenêtres.
SendMessageTimeoutW | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message avec un dépassement de délai spécifié vers une ou des fenêtres avec des paramètres de chaine de caractères étendues (Unicode).
SendMessageW | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message à une fenêtre où à un objet d'une fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
SendNotifyMessageA | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message d'avertissement spécifié vers une fenêtre.
SendNotifyMessageW | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message d'avertissement spécifié vers une fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
SetAbortProc | gdi32.dll | Cette fonction permet de fixer la procédure d'application définit par le programmeur pour alloué un travail d'impression afin d'être annuler durant sa tamporisation dans le tampon d'impression.
SetActiveWindow | user32.dll | Cette fonction permet de rendre le plus haut niveau d'une fenêtre spécifié en une fenêtre active.
SetAclInformation | advapi32.dll | Cette fonction permet de fixer les informations à propos de la liste de contrôle d'accès (ACL).
SetArcDirection | gdi32.dll | Cette fonction permet de fixer la direction du dessinage pour être utilisé dans les fonctions d'arc et de rectangle.
SetBitmapBits | gdi32.dll | Cette fonction permet de fixer l'ensemble de bits d'un Bitmap spécifié avec les valeurs de bits spécifié.
SetBitmapDimensionEx | gdi32.dll | Cette fonction permet de fixer la taille souhaité d'un Bitmap, dans une unité de mesure de 0,01 millimètre.
SetBkColor | gdi32.dll | Cette fonction permet de fixer la couleur de l'arrière-plan de la couleur spécifié.
SetBkMode | gdi32.dll | Cette fonction permet de fixer le mode d'arrière-plan spécifié.
SetBoundsRect | gdi32.dll | Cette fonction permet de contrôler l'accumulation d'informations de limite rectangulaire d'un périphérique de contexte.
SetBrushOrgEx | gdi32.dll | Cette fonction permet de fixer l'origine de la brosse GDI étant associé avec la prochaine brosse d'une application sélectionné dans le périphérique de contexte spécifié.
SetCapture | user32.dll | Cette fonction permet de fixer la capture de la souris dans la fenêtre spécifié.
SetCaretBlinkTime | user32.dll | Cette fonction permet de fixer le taux de clignotement du caret.
SetCaretPos | user32.dll | Cette fonction permet de fixer la position d'un caret.
SetClassLongA | user32.dll | Cette fonction permet de fixer des valeurs d'informations en 32 bits sur une classe.
SetClassLongW | user32.dll | Cette fonction permet de fixer des valeurs d'informations en 32 bits sur une classe avec des paramètres de chaine de caractères étendues (Unicode).
SetClassWord | user32.dll | Cette fonction permet de fixer la valeur d'un mot dans le déplacement spécifié de la classe de mémoire supplémentaire de la classe de fenêtre à laquelle la fenêtre appartient.
SetClipboardData | user32.dll | Cette fonction permet de fixer des données dans le presse-papier.
SetClipboardViewer | user32.dll | Cette fonction permet d'ajouter une fenêtre donnée à la chaine de fenêtre ayant un avertissement si le contenu du presse-papier a changé.
SetColorAdjustment | gdi32.dll | Cette fonction permet de fixer les valeurs de couleurs d'ajustements pour un périphérique de contexte utilisant les valeurs spécifiés.
SetColorSpace | gdi32.dll | Cette fonction permet de fixer l'espace de couleur du périphérique de contexte spécifié en définissant la fin des points d'un espace RVB (RGB) logique dans l'espace CIE XYZ.
SetCommBreak | kernel32.dll | Cette fonction permet de suspendre la transmission de caractères pour un périphérique de communications spécifié et place la ligne de transmission dans un état d'arrêt jusqu'à ce que la fonction ClearCommBreak soit appelée.
SetCommConfig | kernel32.dll | Cette fonction permet de fixer la configuration courante dans un périphérique de communication.
SetCommMask | kernel32.dll | Cette fonction permet de spécifier un ensemble d'événement être surveillé par un périphérique de communication.
SetCommState | kernel32.dll | Cette fonction permet de configurer un périphérique de communication en accord avec bloc de contrôle de périphérique (DCB) spécifié.
SetCommTimeouts | kernel32.dll | Cette fonction permet de fixer les paramètres de dépassement de délai pour tous les opérations de lecture ou d'écriture dans un périphérique de communication spécifié.
SetComputerNameA | kernel32.dll | Cette fonction permet de fixer le nom de l'ordinateur pour le système d'exploitation Windows.
SetComputerNameW | kernel32.dll | Cette fonction permet de fixer le nom de l'ordinateur pour le système d'exploitation Windows avec des paramètres de chaine de caractères étendues (Unicode).
SetConsoleActiveScreenBuffer | kernel32.dll | Cette fonction permet de fixer le tampon d'écran spécifié devant être actuellement affiché dans le tampon de la console d'écran.
SetConsoleCP | kernel32.dll | Cette fonction permet de fixer l'entrée de code de page utilisé par la console associé avec le processus appelant.
SetConsoleCtrlHandler | kernel32.dll | Cette fonction permet d'ajouter un d'enlever une définition d'application de la fonction HandlerRoutine de la liste des fonctions de gestionnaire pour un processus appelant.
SetConsoleCursorInfo | kernel32.dll | Cette fonction permet de fixer la taille et la visibilité du curseur dans le tampon de la console d'écran spécifié.
SetConsoleCursorPosition | kernel32.dll | Cette fonction permet de fixer la position du curseur pour l'affichage sur la console de texte.
SetConsoleMode | kernel32.dll | Cette fonction permet de fixer le mode d'entrée du tampon d'entrée de la console ou du mode de sortie d'un tampon de console d'écran.
SetConsoleOutputCP | kernel32.dll | Cette fonction permet de fixer le code de page de sortie utilisé par la console associé avec le processus appelant.
SetConsoleScreenBufferSize | kernel32.dll | Cette fonction permet de changer la taille d'un tampon de console d'écran spécifié.
SetConsoleTextAttribute | kernel32.dll | Cette fonction permet de fixer les attributs (couleur de fond et d'écriture) pour l'affichage sur la console de texte. C'est l'équivalent d'un octet d'attribut dans un écran de texte matériel.
SetConsoleTitleA | kernel32.dll | Cette fonction permet de fixer le titre de la barre de titre de la fenêtre d'application.
SetConsoleTitleW | kernel32.dll | Cette fonction permet de fixer le titre de la barre de titre de la fenêtre d'application avec des paramètres de chaine de caractères étendues (Unicode).
SetConsoleWindowInfo | kernel32.dll | Cette fonction permet de fixer la taille courante et la position de la fenêtre du tampon de la console d'écran.
SetCurrentDirectoryA | kernel32.dll | Cette fonction permet de fixer le répertoire courant du processus courant.
SetCurrentDirectoryW | kernel32.dll | Cette fonction permet de fixer le répertoire courant du processus courant avec des paramètres de chaine de caractères étendues (Unicode).
SetCursor | user32.dll | Cette fonction permet de fixer l'image du pointeur de la souris.
SetCursorPos | user32.dll | Cette fonction permet de fixer les coordonnées du pointeur de la souris.
SetDebugErrorLevel | user32.dll | Cette fonction permet de fxer le niveau d'erreur minimum dans chaque fenêtre étant généré par les événements de déboguage et passe celui-ci au débogueur.
SetDefaultCommConfigA | kernel32.dll | Cette fonction permet de fixer la configuration par défaut pour un périphérique de communication.
SetDefaultCommConfigW | kernel32.dll | Cette fonction permet de fixer la configuration par défaut pour un périphérique de communication avec des paramètres de chaine de caractères étendues (Unicode).
SetDeviceGammaRamp | gdi32.dll | Cette fonction permet de fixer la rampe gamma d'un panneau d'affichage de couleur directe.
SetDIBColorTable | gdi32.dll | Cette fonction permet de fixer les valeurs de couleurs RVB (rouge, vert, bleu) dans une rangée de table de couleurs d'un périphérique de Bitmap indépendant (DIB) étant actuellement sélectionné dans un périphérique de contexte spécifié.
SetDIBits | gdi32.dll | Cette fonction permet de fixer le pixel dans un Bitmap compatible (DDB) en utilisant les données de couleur trouvé dans le DIB spécifié.
SetDIBitsToDevice | gdi32.dll | Cette fonction permet de fixer les bits d'un périphérique de Bitmap indépendant (DIB) directement dans un périphérique de surface.
SetDlgItemInt | user32.dll | Cette fonction permet de fixer le texte d'un contrôle donnée dans une boite de dialogue vers la chaine de caractères de représentation spécifiant la valeur entière.
SetDlgItemTextA | user32.dll | Cette fonction permet de fixer le titre ou le texte d'un contrôle d'une boite de dialogue.
SetDlgItemTextW | user32.dll | Cette fonction permet de fixer le titre ou le texte d'un contrôle d'une boite de dialogue avec des paramètres de chaine de caractères étendues (Unicode).
SetDoubleClickTime | user32.dll | Cette fonction permet de fixer le temps maximal autorisé pour que des clics sur les boutons de la souris soit considéré comme un double-clic.
SetEndOfFile | kernel32.dll | Cette fonction permet de fixer la position du pointeur de fichier à la fin du fichier utilisant un Handle.
SetEnhMetaFileBits | gdi32.dll | Cette fonction permet de créer un fichier méta de format étendue, basé en mémoire, de données fournit.
SetEnvironmentVariableA | kernel32.dll | Cette fonction permet de fixer la valeur d'une variable d'environnement du système d'exploitation.
SetEnvironmentVariableW | kernel32.dll | Cette fonction permet de fixer la valeur d'une variable d'environnement du système d'exploitation avec des paramètres de chaine de caractères étendues (Unicode).
SetErrorMode | kernel32.dll | Cette fonction permet de contrôler comment le système d'exploitation gère les types sévères dans les erreurs sérieuses.
SetEvent | kernel32.dll | Cette fonction permet de fixer l'état de l'objet d'événement spécifié par un signal.
SetFileApisToANSI | kernel32.dll | Cette fonction permet de faire provoquer, à une série de fonctions de fichiers Win32, l'utilisation d'un ensemble de code de page de caractères ANSI.
SetFileApisToOEM | kernel32.dll | Cette fonction permet de faire provoquer, à une série de fonctions de fichiers Win32, l'utilisation d'un ensemble de code de page de caractères OEM.
SetFileAttributesA | kernel32.dll | Cette fonction permet de fixer les attributs d'un fichier ou d'un répertoire.
SetFileAttributesW | kernel32.dll | Cette fonction permet de fixer les attributs d'un fichier ou d'un répertoire avec des paramètres de chaine de caractères étendues (Unicode).
SetFilePointer | kernel32.dll | Cette fonction permet de déplacer un pointeur de ficher dans un fichier ouvert.
SetFileSecurityA | advapi32.dll | Cette fonction permet de fixer la sécurité d'un objet de fichier ou d'un répertoire.
SetFileSecurityW | advapi32.dll | Cette fonction permet de fixer la sécurité d'un objet de fichier ou d'un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
SetFileTime | kernel32.dll | Cette fonction permet de fixer la date et l'heure de la création, du dernière accès et de la dernière modification d'un fichier.
SetFocus | user32.dll | Cette fonction permet de fixer le focus d'entrée de la fenêtre spécifié.
SetForegroundWindow | user32.dll | Cette fonction permet de mettre le processus léger étant créer pour la fenêtre spécifié dans une fenêtre active ou de premier plan.
SetGraphicsMode | gdi32.dll | Cette fonction permet de fixer le mode graphique pour le périphérique de contexte spécifié.
SetHandleCount | kernel32.dll | Cette fonction permet de changer le nombre de fichier Handle disponible pour un processus.
SetHandleInformation | kernel32.dll | Cette fonction permet de fixer certaines propriétés d'un objet Handle.
SetICMMode | gdi32.dll | Cette fonction permet d'activer ou désactiver la correspondance de couleur d'image pour le périphérique de contexte spécifié.
SetICMProfileA | gdi32.dll | Cette fonction permet de fixer la couleur de profile pour le périphérique de contexte spécifié.
SetICMProfileW | gdi32.dll | Cette fonction permet de fixer la couleur de profile pour le périphérique de contexte spécifié avec des paramètres de chaine de caractères étendues (Unicode).
SetJobA | winspool.drv | Cette fonction permet de fixer l'état du traitement d'un travail contenu dans le tampon d'impressions de l'imprimante.
SetKeyboardState | user32.dll | Cette fonction permet de fixer l'état des 256 touches virtuel de clavier.
SetKernelObjectSecurity | advapi32.dll | Cette fonction permet de fixer la sécurité de l'objet du noyau du système d'exploitation.
SetLastError | kernel32.dll | Cette fonction permet de fixer le code de la dernière erreur d'un appel de processus léger.
SetLastErrorEx | user32.dll | Cette fonction permet de fixer le code de la dernière erreur avec un type d'erreur.
SetLocalTime | kernel32.dll | Cette fonction permet de fixer la date et l'heure locale courante.
SetLocaleInfoA | kernel32.dll | Cette fonction permet de fixer un item d'information local.
SetLocaleInfoW | kernel32.dll | Cette fonction permet de fixer un item d'information local avec des paramètres de chaine de caractères étendues (Unicode).
SetMailslotInfo | kernel32.dll | Cette fonction permet de fixer la valeur de dépassement de délai utilisable pour le mailslot spécifié d'une opération de lecture.
SetMapMode | gdi32.dll | Cette fonction permet de fixer le mode de cartographie d'un périphérique de contexte spécifié.
SetMapperFlags | gdi32.dll | Cette fonction permet de changer la méthode utilisé pour la cartographie d'une police de caractères lors d'une conversion de police de caractères logique vers une police de caractères physique.
SetMenu | user32.dll | Cette fonction permet d'attribué un menu à une fenêtre.
SetMenuContextHelpId | user32.dll | Cette fonction permet d'associer un identificateur de contexte d'aide avec un menu.
SetMenuDefaultItem | user32.dll | Cette fonction permet de fixer l'item par défaut d'un menu déroulant.
SetMenuItemBitmaps | user32.dll | Cette fonction permet d'associer le Bitmap donnée avec un item de menu.
SetMenuItemInfoA | user32.dll | Cette fonction permet de modifier les informations conçernant un item de menu.
SetMenuItemInfoW | user32.dll | Cette fonction permet de modifier les informations conçernant un item de menu avec des paramètres de chaine de caractères étendues (Unicode).
SetMessageQueue | user32.dll | Cette fonction permet de créer un nouveau message dans la file d'attente.
SetMetaFileBitsEx | gdi32.dll | Cette fonction permet de créer un fichier méta de format Windows, basé en mémoire, pour les données fournit.
SetMetaRgn | gdi32.dll | Cette fonction permet d'effectuer l'intersection de la région de capture courante pour le périphérique de contexte spécifié avec la région méta courante et sauvegarde la combinaison des régions dans une nouvelle région méta.
SetMiterLimit | gdi32.dll | Cette fonction permet de fixer la limite pour la longueur d'une jointure de mitre pour le périphérique de contexte spécifié.
SetNamedPipeHandleState | kernel32.dll | Cette fonction permet de fixer le mode de lecture et le mode de bloc d'un tuyau nommé spécifié.
SetPaletteEntries | gdi32.dll | Cette fonction permet de fixer les valeurs de couleurs RVB (ou RGB en anglais) et les drapeaux d'un rang des entrées dans une palette logique spécifié.
SetParent | user32.dll | Cette fonction permet de transférer un objet d'une fenêtre vers une autre.
SetPixel | gdi32.dll | Cette fonction permet de fixer la couleur sous format RVB (RGB) d'un pixel affiché à l'écran.
SetPixelFormat | gdi32.dll | Cette fonction permet de fixer le format de pixel du périphérique de contexte spécifié au format spécifié par l'index spécifié.
SetPixelV | gdi32.dll | Cette fonction permet de fixer le pixel aux coordonnées de fermeture approximatifs spécifiées avec la couleur spécifié.
SetPolyFillMode | gdi32.dll | Cette fonction permet de fixer le mode de remplissage d'un polygone spécifié.
SetPrinterA | winspool.drv | Cette fonction permet d'envoyer une commande à l'imprimante.
SetPriorityClass | kernel32.dll | Cette fonction permet de fixer la priorité d'une classe pour le processus spécifié.
SetPrivateObjectSecurity | advapi32.dll | Cette fonction permet de modifier un descripteur de sécurité d'objet privé.
SetProcessAffinityMask | kernel32.dll | Cette fonction permet de fixer un masque d'affinité de processeur pour le processus léger d'un processus spécifié.
SetProcessPriorityBoost | kernel32.dll | Cette fonction permet d'activer ou désactiver les habilitées du système pour stimuler temporairement la priorité d'un processus léger dans un processus spécifié.
SetProcessShutdownParameters | kernel32.dll | Cette fonction permet de fixer les paramètres de fermeture du système pour le processus appelant courant.
SetProcessWindowStation | user32.dll | Cette fonction permet de fixer une fenêtre de station vers un processus appellant.
SetProcessWorkingSetSize | kernel32.dll | Cette fonction permet de fixer la taille du travail minimum et maximum d'un processus spécifié.
SetPropA | user32.dll | Cette fonction permet d'ajouter une nouvelle entrée ou changer une entrée existante dans la liste de propriété d'une fenêtre spécifié.
SetPropW | user32.dll | Cette fonction permet d'ajouter une nouvelle entrée ou changer une entrée existante dans la liste de propriété d'une fenêtre spécifié avec des paramètres de chaine de caractères étendues (Unicode).
SetRect | user32.dll | Cette fonction permet de fixer la taille et la position d'un rectangle.
SetRectEmpty | user32.dll | Cette fonction permet de créer un rectangle vide (tous les coordonnées sont fixées à 0).
SetRectRgn | gdi32.dll | Cette fonction permet de changer la région spécifié dans un région rectangulaire avec les coordonnées spécifiés.
SetROP2 | gdi32.dll | Cette fonction permet de fixer le mode de dessinage courant.
SetScrollInfo | user32.dll | Cette fonction permet de fixer les paramètres de barre de défilement, en incluant les positions minimums et maximums, la taille de la page et la position de la boite de défilement.
SetScrollPos | user32.dll | Cette fonction permet de fixer la position d'une boite de défilement et, si requis, redessiner la barre de défilement reflétant la nouvelle position de la boite de défilement.
SetScrollRange | user32.dll | Cette fonction permet de fixer les valeurs de position minimum et maximum de la barre de défilement spécifié.
SetSecurityDescriptorDacl | advapi32.dll | Cette fonction permet de fixer les informations dans une liste de contrôle d'accès (ACL) discrétionnaire.
SetSecurityDescriptorGroup | advapi32.dll | Cette fonction permet de fixer le groupe primaire d'information d'un format absolue de descripteur de sécurité, remplacer par un groupe d'information primaire déjà présent dans un descripteur de sécurité.
SetSecurityDescriptorOwner | advapi32.dll | Cette fonction permet de fixer les informations de propriétaire d'un format absolue de descripteur de sécurité.
SetSecurityDescriptorSacl | advapi32.dll | Cette fonction permet de fixer les informations d'une liste de contrôle d'accès (ACL) système.
SetStdHandle | kernel32.dll | Cette fonction permet d'utiliser un ensemble de gestionnaire pour l'entrée standard, la sortie standard ou le périphérique d'erreur standard.
SetStretchBltMode | gdi32.dll | Cette fonction permet de fixer le mode d'étirement Bitmap.
SetSysColors | user32.dll | Cette fonction permet de fixer la/les couleurs d'un/des objet(s) affiché(s) du système d'exploitations Windows.
SetSystemCursor | user32.dll | Cette fonction permet de modifier un des curseurs qu'utilise le système d'exploitations Windows.
SetSystemPaletteUse | gdi32.dll | Cette fonction permet de fixer l'utilisation de la couleur statique dans une palette du système.
SetSystemPowerState | kernel32.dll | Cette fonction permet de fixer l'état de l'alimentation en énergie de l'ordinateur.
SetSystemTime | kernel32.dll | Cette fonction permet de fixer la date et l'heure système courante.
SetSystemTimeAdjustment | kernel32.dll | Cette fonction permet d'activer ou désactiver l'ajustement du temps périodique de l'horloge de l'heure de la journée.
SetTapeParameters | kernel32.dll | Cette fonction permet de fixer la taille d'un bloc de bande magnétique ou configure le périphérique de bande magnétique.
SetTapePosition | kernel32.dll | Cette fonction permet de fixer la position de la bande magnétique dans un périphérique spécifié.
SetTextAlign | gdi32.dll | Cette fonction permet de fixer le contexte d'alignement d'un objet de texte.
SetTextColor | gdi32.dll | Cette fonction permet de fixer la couleur du texte de la couleur spécifié.
SetTextCharacterExtra | gdi32.dll | Cette fonction permet de fixer la quantité d'espacement entre les caractères.
SetTextJustification | gdi32.dll | Cette fonction permet d'ajouter de l'espacement dans les caractères de saut d'une chaine de caractères.
SetThreadAffinityMask | kernel32.dll | Cette fonction permet de fixer le masque d'affinité du microprocesseur pour le processus léger spécifié.
SetThreadContext | kernel32.dll | Cette fonction permet de fixer le contexte d'un processus léger spécifié.
SetThreadDesktop | user32.dll | Cette fonction permet de fixer le bureau au processus léger appellant.
SetThreadIdealProcessor | kernel32.dll | Cette fonction permet de fixer le microprocesseur préféré pour un processus léger.
SetThreadLocale | kernel32.dll | Cette fonction permet de fixer l'appel de processus léger locale courant.
SetThreadPriority | kernel32.dll | Cette fonction permet de fixer la valeur de priorité pour le processus léger spécifié.
SetThreadPriorityBoost | kernel32.dll | Cette fonction permet d'activer ou désactiver l'habilité d'un système à temporairement stimuler la priorité d'un processus léger.
SetThreadToken | advapi32.dll | Cette fonction permet de fixer une personnification de jeton à un processus léger.
SetTimer | user32.dll | Cette fonction permet d'installer une minuterie système.
SetTimeZoneInformation | kernel32.dll | Cette fonction permet de fixer les paramètres de fuseau horaire courant.
SetTokenInformation | advapi32.dll | Cette fonction permet de fixer une variété de type d'information pour un accès à un jeton spécifié.
SetUnhandledExceptionFilter | kernel32.dll | Cette fonction permet à une application de remplacer le gestionnaire d'exception de bas niveau dans les places Win32 du haut de chaque processus léger et processus.
SetupComm | kernel32.dll | Cette fonction permet d'initialiser les paramètres de communications pour un périphérique de communications spécifié.
SetupCopyErrorA | setupapi.dll | Cette fonction permet d'afficher une boite de dialogue pour indiquer à l'utilisateur qu'une erreur pendant la copie s'est produit.
SetupDeleteErrorA | setupapi.dll | Cette fonction permet d'afficher une boite de dialogue pour indiquer à l'utilisateur qu'une erreur pendant l'effacement d'un fichier s'est produit.
SetUserObjectInformationA | user32.dll | Cette fonction permet de fixer les informations à propos d'une fenêtre de station ou d'un objet de bureau.
SetUserObjectInformationW | user32.dll | Cette fonction permet de fixer les informations à propos d'une fenêtre de station ou d'un objet de bureau avec des paramètres de chaine de caractères étendues (Unicode).
SetUserObjectSecurity | user32.dll | Cette fonction permet de fixer la sécurité d'un objet utilisateur.
SetViewportExtEx | gdi32.dll | Cette fonction permet de fixer les extensions X et Y d'un point de vue d'un périphérique de contexte spécifié.
SetViewportOrgEx | gdi32.dll | Cette fonction permet de fixer le point de vue d'origine d'un périphérique de contexte spécifié.
SetVolumeLabelA | kernel32.dll | Cette fonction permet de fixer le nom de volume d'une unité de disque.
SetVolumeLabelW | kernel32.dll | Cette fonction permet de fixer le nom de volume d'une unité de disque avec des paramètres de chaine de caractères étendues (Unicode).
SetWaitableTimer | kernel32.dll | Cette fonction permet d'activer la minuterie d'attente spécifié.
SetWindowContextHelpId | user32.dll | Cette fonction permet d'associer un identificateur de contexte d'aide avec la fenêtre spécifié.
SetWindowLongA | user32.dll | Cette fonction permet de placer une valeur 32 bits dans le déplacement spécifié dans une fenêtre en mémoire supplémentaire pour la fenêtre spécifié.
SetWindowLongW | user32.dll | Cette fonction permet de placer une valeur 32 bits dans le déplacement spécifié dans une fenêtre en mémoire supplémentaire pour la fenêtre spécifié avec des paramètres de chaine de caractères étendues (Unicode).
SetWindowPlacement | user32.dll | Cette fonction permet de fixer l'état d'affichage et de restituer, minimiser et maximiser les positions d'une fenêtre.
SetWindowPos | user32.dll | Cette fonction permet de fixer la position d'une fenêtre à une nouvelle coordonnées à l'écran.
SetWindowRgn | user32.dll | Cette fonction permet de fixer la région de fenêtre dans une fenêtre.
SetWindowsHookA | user32.dll | Cette fonction permet d'installer une fonction de crochet utilisateur dans une chaine de crochet.
SetWindowsHookExA | user32.dll | Cette fonction permet d'installer un crochet de fonction utilisateur dans une chaine de crochet.
SetWindowsHookExW | user32.dll | Cette fonction permet d'installer un crochet de fonction utilisateur dans une chaine de crochet avec des paramètres de chaine de caractères étendues (Unicode).
SetWindowsHookW | user32.dll | Cette fonction permet d'installer une fonction de crochet utilisateur dans une chaine de crochet avec des paramètres de chaine de caractères étendues (Unicode).
SetWindowTextA | user32.dll | Cette fonction permet de définir le contenu texte d'une fenêtre.
SetWindowTextW | user32.dll | Cette fonction permet de définir le contenu texte d'une fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
SetWindowWord | user32.dll | Cette fonction permet de placer une valeur 16 bits dans le déplacement spécifié dans une fenêtre en mémoire supplémentaire pour la fenêtre spécifié.
SetWinMetaFileBits | gdi32.dll | Cette fonction permet de convertir un fichier méta d'un ancien format Windows vers un nouveau format étendue et entrepose le fichier méta en mémoire.
SetWindowOrgEx | gdi32.dll | Cette fonction permet de fixer la fenêtre d'origine d'un périphérique de contexte spécifié.
SetWorldTransform | gdi32.dll | Cette fonction permet de fixer une transformation de double dimensions linéaire entre l'espace mondiale et l'espace de page pour le périphérique de contexte spécifié.
SHAddToRecentDocs | shell32.dll | Cette fonction permet d'ajouter un lien vers un document dans la liste des documents récamment utilisé.
SHAppBarMessage | shell32.dll | Cette fonction permet d'envoyer des commandes à la barrre de tâche.
SHBrowseForFolder | shell32.dll | Cette fonction permet d'afficher la boite de dialogue sélectionnant un répertoire.
SHCopyKeyA | shell32.dll | Cette fonction permet de copier les clefs de registre d'un répertoire à un autre dans la base de registres en tenant compte de bien copier toutes les sous-branches de répertoire inclus dans la clef source.
ShellAboutA | shell32.dll | Cette fonction permet d'afficher la boite de dialogue «A propos» de l'application spécifié.
ShellExecuteA | shell32.dll | Cette fonction permet de lancer une application externe.
ShellExecuteEx | shell32.dll | Cette fonction permet de lancer une application externe en utilisant l'interpréteur de commande (Shell) du système d'exploitation Windows.
Shell_NotifyIconA | shell32.dll | Cette fonction permet d'effectuer l'action d'ajouter, modifier ou supprimer une icône dans la barre de tâche.
SHEmptyRecycleBinA | shell32.dll | Cette fonction permet de vider le contenu de la corbeille.
SHFileOperationA | shell32.dll | Cette fonction permet d'effectuer une copie, renommer, déplacer ou de supprimer un objet de fichier.
SHFormatDrive | shell32.dll | Cette fonction permet d'effectuer le formattage d'une unité de disque.
SHGetPathFromIDList | shell32.dll | Cette fonction permet de retourner un pointeur dans un arbre de répertoire à l'emplacement ou se trouve un fichier.
ShowCaret | user32.dll | Cette fonction permet d'afficher un caret à l'écran à la position courant du caret.
ShowCursor | user32.dll | Cette fonction permet d'afficher ou de faire disparaitre le pointeur de la souris.
ShowOwnedPopups | user32.dll | Cette fonction permet d'afficher ou de cacher tous les fenêtres POP-UP du propriétaire de la fenêtre spécifié.
ShowScrollBar | user32.dll | Cette fonction permet d'afficher ou de faire disparaitre la barre de défilement d'une fenêtre ou d'un objet.
ShowWindow | user32.dll | Cette fonction permet de définir l'état visuel d'une fenêtre d'application.
ShowWindowAsync | user32.dll | Cette fonction permet de fixer l'affichage d'état de la création d'une fenêtre par différent processus léger.
SHSetValueA | shlwapi.dll | Cette fonction permet de fixer une valeur dans la base de registres.
SignalObjectAndWait | kernel32.dll | Cette fonction permet de signaler un objet et d'attendre après un autre objet, une simple opération.
SizeofResource | kernel32.dll | Cette fonction permet de demander la taille, en octets, d'une ressource spécifié.
Sleep | kernel32.dll | Cette fonction permet de faire passer en mode d'attente pendant un certain délai en milliseconde le processus courant.
SleepEx | kernel32.dll | Cette fonction permet de faire en sorte que le processus léger courant entre dans un état d'attente jusqu'à ce que l'intervalle de temps spécifié est passé ou jusqu'à l'achèvement d'une fonction d'appel arrière d'entrée/sortie soit appelé.
sndPlaySoundA | winmm.dll | Cette fonction permet de faire jouer un son de format Wave à partir d'un fichier.
SQLAllocConnect | odbc32.dll | Cette fonction permet d'effectuer de l'allocation de mémoire pour un identificateur de connexion ODBC avec un environnement spécifié.
SQLAllocEnv | odbc32.dll | Cette fonction permet d'effectuer de l'allocation de mémoire pour un identificateur d'environnement ODBC.
SQLAllocStmt | odbc32.dll | Cette fonction permet d'effectuer de l'allocation de mémoire pour un identificateur d'instruction ODBC.
SQLBindCol | odbc32.dll | Cette fonction permet d'effectuer de la lecture d'une colonne du résultat d'une requête par ODBC.
SQLBindParameter | odbc32.dll | Cette fonction permet d'envoyer un tampon de paramètres dans une instruction SQL par ODBC.
SQLConfigDataSource | odbccp32.dll | Cette fonction permet d'envoyer des commandes au pilote ODBC (Open Data Base Connectivity).
StartDocA | gdi32.dll | Cette fonction permet d'indiquer le commencement d'un travail d'impression pour l'imprimante.
StartDocW | gdi32.dll | Cette fonction permet d'indiquer le commencement d'un travail d'impression pour l'imprimante avec des paramètres de chaine de caractères étendues (Unicode).
StartPage | gdi32.dll | Cette fonction permet d'indiquer le début d'une page de document pour l'impression pour l'imprimante.
StretchBlt | gdi32.dll | Cette fonction permet de copier un morceau dans une autre image.
StretchDIBits | gdi32.dll | Cette fonction permet de copier les données de couleur d'un rectangle de pixels dans un DIB de la destination rectangulaire spécifié.
StrIsIntlEqualA | shlwapi.dll | Cette fonction permet de comparer le début de deux chaines de caractères ASCIZ.
StrNCatA | shlwapi.dll | Cette fonction permet d'ajouter à la fin d'une chaine de caractères ASCIZ le contenu d'une chaine de caractères ASCIZ.
StrokeAndFillPath | gdi32.dll | Cette fonction permet de fermer n'importe quel figures ouvertes dans un chemin, traitant les lignes en dehors du chemin en utilisant le crayon courant, et remplissant l'intérieur en utilisant la brosse.
StrokePath | gdi32.dll | Cette fonction permet d'effectuer un traitement d'un chemin spécifié en utilisant le crayon courant.
StrToIntExA | shlwapi.dll | Cette fonction permet de convertir une chaine de caractères ASCIZ ayant un nombre décimal ou hexadécimal en une valeur numérique entière.
StrTrimA | shlwapi.dll | Cette fonction permet d'enlever les caractères spécifié au début et à la fin d'une chaine de caractères ASCIZ.
SubtractRect | user32.dll | Cette fonction permet de demander les coordonnées d'un rectangle par soustraction d'un rectangle par un autre.
SuspendThread | kernel32.dll | Cette fonction permet de suspendre le processus léger spécifié.
SwapBuffers | gdi32.dll | Cette fonction permet d'échanger le tampon de premier plan avec l'arrière-plan si le format du pixel courant pour la fenêtre est référencée par le périphérique de contexte spécifié inclus dans le tampon d'arrière plan.
SwapMouseButton | user32.dll | Cette fonction permet d'échanger le comportement des boutons de gauche de la souris devienne celui de droite et que celui de droite devienne celui de gauche.
SwitchDesktop | user32.dll | Cette fonction permet de fixer le bureau visible et actif.
SwitchToFiber | kernel32.dll | Cette fonction permet de planifier une fibre.
SwitchToThread | kernel32.dll | Cette fonction permet de provoquer l'exécution d'un rendement de processus léger vers un autre processus léger étant prêt a être exécuté par le microprocesseur courant.
SystemParametersInfoA | user32.dll | Cette fonction permet de fixer certain paramètre du système d'exploitation Windows.
SystemParametersInfoW | user32.dll | Cette fonction permet de fixer certain paramètre du système d'exploitation Windows avec des paramètres de chaine de caractères étendues (Unicode).
SystemTimeToFileTime | kernel32.dll | Cette fonction permet de convertir le temps système vers le temps fichier.
SystemTimeToTzSpecificLocalTime | kernel32.dll | Cette fonction permet de convertir l'UTC (Coordinated Universal Time) vers un fuseau horaire spécifié correspondant au temps locale.
TabbedTextOutA | user32.dll | Cette fonction permet d'écrire une chaine de caractères à l'emplacement spécifié, en étendant la tabulation des valeurs spécifiés dans des positions d'une tableau de tabulation sans arrêt.
TabbedTextOutW | user32.dll | Cette fonction permet d'écrire une chaine de caractères à l'emplacement spécifié, en étendant la tabulation des valeurs spécifiés dans des positions d'une tableau de tabulation sans arrêt avec des paramètres de chaine de caractères étendues (Unicode).
TerminateProcess | kernel32.dll | Cette fonction permet de terminer le processus spécifié et tous ses processus légers.
TerminateThread | kernel32.dll | Cette fonction permet de terminer le processus léger spécifié.
TextOutA | gdi32.dll | Cette fonction permet d'afficher une chaine de caractères dans une fenêtre d'application.
TextOutW | gdi32.dll | Cette fonction permet d'afficher une chaine de caractères dans une fenêtre d'application avec des paramètres de chaine de caractères étendues (Unicode).
TileWindows | user32.dll | Cette fonction permet de présenter sous forme mosaïque les sous-fenêtre d'une fenêtre d'application MDI.
TlsAlloc | kernel32.dll | Cette fonction permet d'allouer un processus léger d'entrepose d'index locale (TLS).
TlsFree | kernel32.dll | Cette fonction permet de libérer un processus léger d'entrepose d'index locale (TLS).
TlsGetValue | kernel32.dll | Cette fonction permet de demander la valeur dans un appel de processus d'entreposage d'une fente locale (TLS) pour un index TLS spécifié.
TlsSetValue | kernel32.dll | Cette fonction permet d'entreposer la valeur d'un appel de processus d'entreposage d'une fente locale (TLS) pour un index TLS spécifié.
ToAscii | user32.dll | Cette fonction permet de traduire le code de touche virtuel spécifié et l'état du clavier en sa correspondance de caractère Windows ou de caractères.
ToAsciiEx | user32.dll | Cette fonction permet de traduire le code de touche virtuel spécifié et l'état du clavier en sa correspondance de caractère Windows ou de caractères avec des options supplémentaires.
TouchFileTimes | imagehlp.dll | Cette fonction permet de fixer la date et l'heure d'un fichier avec un Handle.
ToUnicode | user32.dll | Cette fonction permet de traduire le code de touche virtuel spécifié et l'état du clavier en sa correspondance de caractère Unicode ou de caractères.
ToUnicodeEx | user32.dll | Cette fonction permet de traduire le code de touche virtuel spécifié et l'état du clavier en sa correspondance de caractère Unicode ou de caractères avec des options supplémentaires.
TrackMouseEvent | user32.dll | Cette fonction permet de poster les messages lorsque le pointeur de souris laisse une fenêtre ou passe dessus une fenêtre pour un nombre de temps spécifié.
TrackPopupMenu | user32.dll | Cette fonction permet d'afficher un menu contextuel.
TrackPopupMenuEx | user32.dll | Cette fonction permet d'afficher un menu contextuel à l'emplacement spécifié et trace les items de sélection dans un menu contextuel.
TransactNamedPipe | kernel32.dll | Cette fonction permet de combiner dans une simple opération réseau les fonctions d'écriture d'un message et de lecture de message d'un tuyau nommé spécifié.
TranslateAcceleratorA | user32.dll | Cette fonction permet d'effectuer le traitement des touches d'accélérations pour les commandes de menu.
TranslateAcceleratorW | user32.dll | Cette fonction permet d'effectuer le traitement des touches d'accélérations pour les commandes de menu avec des paramètres de chaine de caractères étendues (Unicode).
TranslateCharsetInfo | user32.dll | Cette fonction permet d'effectuer une conversion, basé sur ensemble de caractères spécifié, un code de page ou une valeur de signature de police de caractères, ajustant tous les membres d'une structure de destination aux valeurs approprié.
TranslateMDISysAccel | user32.dll | Cette fonction permet d'effectuer le traitement d'une combinaison de touches d'accélération pour une interface de document multiple (MDI) de la fenêtre enfant.
TranslateMessage | user32.dll | Cette fonction permet d'effectuer une transformation de message de touche virtuel en caractères de messages.
TransmitCommChar | kernel32.dll | Cette fonction permet de transmettre un caractère spécifié à venir dans des données en attente dans un tampon de sortie du périphérique de communication spécifié.
TryEnterCriticalSection | kernel32.dll | Cette fonction permet d'effectuer une tentative pour entrer dans une section critique sans blocage.
UnhandledExceptionFilter | kernel32.dll | Cette fonction permet de passer une exception non définit au débogueur si le processus de déboguage est actif.
UnhookWindowsHook | user32.dll | Cette fonction permet d'enlever la fonction crochet utilisateur pour une chaine de fonctions crochet.
UnhookWindowsHookEx | user32.dll | Cette fonction permet d'enlever un crochet de fonction utilisateur d'une chaine de crochet.
UnionRect | user32.dll | Cette fonction permet d'effectuer la création de l'union de 2 rectangles.
UnloadKeyboardLayout | user32.dll | Cette fonction permet d'enlever une schéma de clavier.
UnlockFile | kernel32.dll | Cette fonction permet de déverrouiller une région d'un fichier ouvert.
UnlockFileEx | kernel32.dll | Cette fonction permet de déverrouiller une rangée d'octets précédemment verrouillé dans un fichier ouvert.
UnmapViewOfFile | kernel32.dll | Cette fonction permet de cartographier une vue cartographier dans un fichier d'un espace d'adressage d'un processus appelant.
UnpackDDElParam | user32.dll | Cette fonction permet d'effectuer un décompactage d'une valeur DDE reçu spécifié vers un message DDE posté.
UnrealizeObject | gdi32.dll | Cette fonction permet de réinitialiser l'origine de la brosse ou de réinitialiser la palette logique.
UnregisterClassA | user32.dll | Cette fonction permet d'enlever une classe de fenêtre et libère l'entreposage requis par la classe.
UnregisterClassW | user32.dll | Cette fonction permet d'enlever une classe de fenêtre et libère l'entreposage requis par la classe avec des paramètres de chaine de caractères étendues (Unicode).
UnregisterDeviceNotification | user32.dll | Cette fonction permet de désenregistrer un périphérique ou un type de périphérique pour que la fenêtre reçoivent des avertissements de changements.
UnregisterHotKey | user32.dll | Cette fonction permet de désenregistrer l'état des touches de combinaison (Alt, Ctrl, Shift) pour le processus léger.
UpdateColors | gdi32.dll | Cette fonction permet de mettre-à-jour la région client d'un périphérique de contexte spécifié en faisant correspondre les couleurs courantes dans une région client, pixel par pixel, à une palette de système.
UpdateResourceA | kernel32.dll | Cette fonction permet d'ajouter, supprimer ou remplacer une ressource dans un fichier exécutable.
UpdateResourceW | kernel32.dll | Cette fonction permet d'ajouter, supprimer ou remplacer une ressource dans un fichier exécutable avec des paramètres de chaine de caractères étendues (Unicode).
UpdateWindow | user32.dll | Cette fonction permet de mettre à jour la région client de la fenêtre donnée par l'envoie du message WM_PAINT à la fenêtre si la région à mettre à jour de la fenêtre n'est pas vide.
UrlCanonicalizeA | shlwapi.dll | Cette fonction permet de transformer un chemin d'un URL de sa forme absolue à relative, c'est-à-dire de remplacer des "../" pour atteinte le répertoire en court par exemple.
UrlCombineA | shlwapi.dll | Cette fonction permet d'ajouter un chemin d'un URL à la fin d'un autre chemin d'URL.
UrlCreateFromPathA | shlwapi.dll | Cette fonction permet de convertir un chemin de système d'exploitation de style DOS sous sa forme URL.
UrlEscapeA | shlwapi.dll | Cette fonction permet de convertir les caractères particulier en format acceptable pour un URL.
UrlGetPartA | shlwapi.dll | Cette fonction permet d'extraire une partie de l'URL.
UrlIsOpaqueA | shlwapi.dll | Cette fonction permet de demander si le URL est opaque.
UrlUnescapeA | shlwapi.dll | Cette fonction permet de convertir les caractères particulier du URL en une chaine de caractères ASCIZ.
ValidateRect | user32.dll | Cette fonction permet de valider une région client avec le rectangle donnée par suppression du rectangle de la région à mettre à jour de la fenêtre donnée.
ValidateRgn | user32.dll | Cette fonction permet de valider la région client avec la région donnée par suppression de la région de la mise à jour courante d'une région de fenêtre spécifié.
VerifyScreenSavePwd | password.cpl | Cette fonction permet d'effectuer la vérification du mots de passe lors du lancement d'un écran de veille.
VerLanguageNameA | kernel32.dll | Cette fonction permet de demander le MID identifiant le langage utilisé par le système d'exploitation.
VerLanguageNameW | kernel32.dll | Cette fonction permet de demander le MID identifiant le langage utilisé par le système d'exploitation avec des paramètres de chaines de caractères étendues (Unicode).
VirtualAlloc | kernel32.dll | Cette fonction permet de réservé ou d'engager une région de pages dans un espace d'adressage virtuel d'un processus appelant.
VirtualAllocEx | kernel32.dll | Cette fonction permet de réservé ou d'engager une région de pages dans un espace d'adressage virtuel pour le processus spécifié.
VirtualFree | kernel32.dll | Cette fonction permet de relâcher ou désengager (ou les deux) une région de pages dans une espace de d'adressage virtuel d'un processus appelant.
VirtualFreeEx | kernel32.dll | Cette fonction permet de relâcher ou désengager (ou les deux) une région de pages dans une espace de d'adressage virtuel pour un processus spécifié.
VirtualLock | kernel32.dll | Cette fonction permet de verrouiller une région spécifié dans un espace d'adressage virtuel de la mémoire en s'assurant que l'accès ultérieur à la région ne soit pas passible d'une erreur de page.
VirtualQuery | kernel32.dll | Cette fonction permet de fournir les informations à propos d'un rang de pages dans un espace d'adressage virtuel pour un processus appelant.
VirtualQueryEx | kernel32.dll | Cette fonction permet de fournir les informations à propos d'un rang de pages dans un espace d'adressage virtuel dans un processus spécifié.
VirtualUnlock | kernel32.dll | Cette fonction permet de déverrouiller un range de pages spécifié dans un espace d'adressage virtuel d'un processus et activant le système pour l'échange de pages dans le fichier de pagination si nécessaire.
VkKeyScanA | user32.dll | Cette fonction permet d'effectuer la conversion de caractère correspondant un code de touche virtuel et de l'état de touche de combinaison du clavier courant.
VkKeyScanExA | user32.dll | Cette fonction permet d'effectuer la conversion de caractère correspondant un code de touche virtuel et de l'état de touche de combinaison du clavier courant en utilisant le langage et la couche physique du clavier.
VkKeyScanExW | user32.dll | Cette fonction permet d'effectuer la conversion de caractère correspondant un code de touche virtuel et de l'état de touche de combinaison du clavier courant en utilisant le langage et la couche physique du clavier avec des paramètres de chaine de caractères étendues (Unicode).
VkKeyScanW | user32.dll | Cette fonction permet d'effectuer la conversion de caractère correspondant un code de touche virtuel et de l'état de touche de combinaison du clavier courant avec des paramètres de chaine de caractères étendues (Unicode).
WaitCommEvent | kernel32.dll | Cette fonction permet d'attendre qu'un événement se produise sur le périphérique de communication spécifié.
WaitForDebugEvent | kernel32.dll | Cette fonction permet d'attendre qu'un événement de déboguage se produise dans un processus en déboguage.
WaitForInputIdle | user32.dll | Cette fonction permet d'attendre tant que le processus données est en attente d'une entrée utilisateur sans attendre d'entrée ou de dépassement d'intervalle de temps.
WaitForMultipleObjects | kernel32.dll | Cette fonction permet de retourner lorsque l'un des objets indiqués est dans l'état signalé, ou lorsque le délai d'attente spécifié s'est écoulé.
WaitForMultipleObjectsEx | kernel32.dll | Cette fonction permet d'attendre que la fonction soit utilisés pour un traitement d'attendre d'alerte.
WaitForSingleObject | kernel32.dll | Cette fonction permet d'attendre qu'un objet retourne un signal ou que le délai spécifié soit écoulé.
WaitForSingleObjectEx | kernel32.dll | Cette fonction permet d'étendre la fonction d'attente étant utilisés pour un traitement d'attendre d'alerte.
WaitMessage | user32.dll | Cette fonction permet de rendre le contrôle à une autre application quand une application n'a pas une autre tâche en traitement.
WaitNamedPipeA | kernel32.dll | Cette fonction permet d'attendre jusqu'à ce qu'un dépassement d'intervalle ou d'une instance d'un tuyau nommé spécifié soit disponible pour être connecté à processus en attente d'une opération ConnectNamedPipe se produise.
WaitNamedPipeW | kernel32.dll | Cette fonction permet d'attendre jusqu'à ce qu'un dépassement d'intervalle ou d'une instance d'un tuyau nommé spécifié soit disponible pour être connecté à processus en attente d'une opération ConnectNamedPipe se produise avec des paramètres de chaine de caractères étendue (Unicode).
waveOutGetNumDevs | winmm.dll | Cette fonction permet de demander le nombre de sortie Wave disponible sur le système d'explotation Windows.
WideCharToMultiByte | kernel32.dll | Cette fonction permet de cartographier une chaine de caractères Unicode en une nouvelle chaine de caractères.
WidenPath | gdi32.dll | Cette fonction permet de redéfinir le chemin courant de la région devant être repeinte si le chemin est un trait utilisant le crayon courant sélectionné dans le périphérique de contexte spécifié.
WindowFromDC | user32.dll | Cette fonction permet de demander le Handle de la fenêtre correspondante au périphérique de contexte spécifié.
WindowFromPoint | user32.dll | Cette fonction permet de demander le Handle associé à une fenêtre correspondant au coordonnées pixel spécifié.
WinExec | kernel32.dll | Cette fonction permet de lancer l'exécution d'un programme externe.
WinHelpA | user32.dll | Cette fonction permet de démarrer la fenêtre d'aide (WINHELP.EXE) et passe les données optionnels indiquant la nature de la requête d'aide pour l'application.
WinHelpW | user32.dll | Cette fonction permet de démarrer la fenêtre d'aide (WINHELP.EXE) et passe les données optionnels indiquant la nature de la requête d'aide pour l'application avec des paramètres de chaine de caractères étendues (Unicode).
WNetAddConnection2A | mpr.dll | Cette fonction permet de fabriquer une connexion vers une ressource réseau.
WNetAddConnection2W | mpr.dll | Cette fonction permet de fabriquer une connexion vers une ressource réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetAddConnection3A | mpr.dll | Cette fonction permet de fabriquer une connexion vers une ressource réseau en utilisant des options supplémentaires.
WNetAddConnection3W | mpr.dll | Cette fonction permet de fabriquer une connexion vers une ressource réseau en utilisant des options supplémentaires avec des paramètres de chaine de caractères étendues (Unicode).
WNetAddConnectionA | mpr.dll | Cette fonction permet d'effectuer la connexion d'une unité de disque à une ressource réseau.
WNetAddConnectionW | mpr.dll | Cette fonction permet d'effectuer la connexion d'une unité de disque à une ressource réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetCancelConnection2A | mpr.dll | Cette fonction permet d'effectuer l'arrêt d'une connexion réseau existante.
WNetCancelConnection2W | mpr.dll | Cette fonction permet d'effectuer l'arrêt d'une connexion réseau existante avec des paramètres de chaine de caractères étendues (Unicode).
WNetCancelConnectionA | mpr.dll | Cette fonction permet d'effectuer la déconnexion d'une unité de disque à une ressource réseau.
WNetCancelConnectionW | mpr.dll | Cette fonction permet d'effectuer la déconnexion d'une unité de disque à une ressource réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetCloseEnum | mpr.dll | Cette fonction permet de terminer l'énumération d'une ressource réseau débuté par la fonction WNetOpenEnum.
WNetConnectionDialog | mpr.dll | Cette fonction permet d'afficher une boite de dialogue permettant à une unité de disque de se connecter à une ressource réseau.
WNetConnectionDialog1A | mpr.dll | Cette fonction permet d'introduire une boite de dialogue de navigation général pour la connexion des ressources de réseau.
WNetConnectionDialog1W | mpr.dll | Cette fonction permet d'introduire une boite de dialogue de navigation général pour la connexion des ressources de réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetDisconnectDialog | mpr.dll | Cette fonction permet d'afficher une boite de dialogue permettant à une unité de disque de se déconnecter à une ressource réseau.
WNetDisconnectDialog1A | mpr.dll | Cette fonction permet d'effectuer la déconnexion d'une ressource de réseau.
WNetDisconnectDialog1W | mpr.dll | Cette fonction permet d'effectuer la déconnexion d'une ressource de réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetEnumResourceA | mpr.dll | Cette fonction permet de continuer l'énumération de ressource réseau commencé par la fonction WNetOpenEnum.
WNetEnumResourceW | mpr.dll | Cette fonction permet de continuer l'énumération de ressource réseau commencé par la fonction WNetOpenEnum avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetConnectionA | mpr.dll | Cette fonction permet de demander le nom de la ressource réseau associé avec un périphérique local.
WNetGetConnectionW | mpr.dll | Cette fonction permet de demander le nom de la ressource réseau associé avec un périphérique local avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetLastErrorA | mpr.dll | Cette fonction permet de demander le plus récent des derniers code d'erreur étendue des fonctions réseau du système d'exploitation.
WNetGetLastErrorW | mpr.dll | Cette fonction permet de demander le plus récent des derniers code d'erreur étendue des fonctions réseau du système d'exploitation avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetNetworkInformationA | mpr.dll | Cette fonction permet de demander les informations étendues à propos d'un fournisseur de réseau spécifié dont le nom a été retourné lors d'une énumération réseau précédente.
WNetGetNetworkInformationW | mpr.dll | Cette fonction permet de demander les informations étendues à propos d'un fournisseur de réseau spécifié dont le nom a été retourné lors d'une énumération réseau précédente avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetProviderNameA | mpr.dll | Cette fonction permet de demander le nom de fournisseur pour un type spécifié dans un réseau.
WNetGetProviderNameW | mpr.dll | Cette fonction permet de demander le nom de fournisseur pour un type spécifié dans un réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetResourceParentA | mpr.dll | Cette fonction permet de naviguer à partir d'une ressource.
WNetGetResourceParentW | mpr.dll | Cette fonction permet de naviguer à partir d'une ressource avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetUniversalNameA | mpr.dll | Cette fonction permet de prendre un chemin, avec comme base une unité de disque, pour un réseau de ressource et demande la structure de données contenant des formes universel de ce nom.
WNetGetUniversalNameW | mpr.dll | Cette fonction permet de prendre un chemin, avec comme base une unité de disque, pour un réseau de ressource et demande la structure de données contenant des formes universel de ce nom avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetUserA | mpr.dll | Cette fonction permet de connaitre le nom de l'utilisateur utilisé pour la connexion réseau.
WNetGetUserW | mpr.dll | Cette fonction permet de connaitre le nom de l'utilisateur utilisé pour la connexion réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetOpenEnumA | mpr.dll | Cette fonction permet de démarrer l'énumération de ressource réseau ou de connexions existantes.
WNetOpenEnumW | mpr.dll | Cette fonction permet de démarrer l'énumération de ressource réseau ou de connexions existantes avec des paramètres de chaine de caractères étendues (Unicode).
WNetSetConnectionA | mpr.dll | Cette fonction permet de modifier les caractéristiques d'une connexion réseau.
WNetSetConnectionW | mpr.dll | Cette fonction permet de modifier les caractéristiques d'une connexion réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetUseConnectionA | mpr.dll | Cette fonction permet de fabriquer une connexion vers une ressource réseau.
WNetUseConnectionW | mpr.dll | Cette fonction permet de fabriquer une connexion vers une ressource réseau avec des paramètres de chaine de caractères étendues (Unicode).
WriteConsoleA | kernel32.dll | Cette fonction permet d'effectuer l'écriture d'une chaine de caractères dans la sortie de la console standard.
WriteConsoleW | kernel32.dll | Cette fonction permet d'effectuer l'écriture d'une chaine de caractères dans la sortie de la console standard avec des paramètres de chaine de caractères étendues (Unicode).
WriteConsoleInputA | kernel32.dll | Cette fonction permet d'écrire des données directement dans l'entrée du tampon de la console.
WriteConsoleInputW | kernel32.dll | Cette fonction permet d'écrire des données directement dans l'entrée du tampon de la console avec des paramètres de chaine de caractères étendues (Unicode).
WriteConsoleOutputA | kernel32.dll | Cette fonction permet d'écrire le caractère et la donnée d'attribut de couleur vers un bloc rectangulaire spécifié dans une cellule de caractères d'un tampon de console d'écran.
WriteConsoleOutputW | kernel32.dll | Cette fonction permet d'écrire le caractère et la donnée d'attribut de couleur vers un bloc rectangulaire spécifié dans une cellule de caractères d'un tampon de console d'écran avec des paramètres de chaine de caractères étendue (Unicode).
WriteConsoleOutputAttribute | kernel32.dll | Cette fonction permet de copier un nombre d'attributs de couleurs de premier plan et d'arrière-plan dans une cellule consécutive d'un tampon de console d'écran en débutant à l'emplacement spécifié.
WriteConsoleOutputCharacterA | kernel32.dll | Cette fonction permet d'effectuer une copie d'un nombre de caractères à une cellule consécutive d'un tampon de console d'écran en débutant à l'emplacement spécifié.
WriteConsoleOutputCharacterW | kernel32.dll | Cette fonction permet d'effectuer une copie d'un nombre de caractères à une cellule consécutive d'un tampon de console d'écran en débutant à l'emplacement spécifié avec des paramètres de chaine de caractères étendue (Unicode).
WriteFile | kernel32.dll | Cette fonction permet d'écrire des données dans un fichier et est conçue pour des opérations sychronisé ou désychronisé.
WriteFileEx | kernel32.dll | Cette fonction permet d'écrire des données dans un fichier.
WritePrivateProfileSectionA | kernel32.dll | Cette fonction permet de remplacer les clefs et les valeurs dans la section spécifié d'un fichier d'initialisation.
WritePrivateProfileSectionW | kernel32.dll | Cette fonction permet de remplacer les clefs et les valeurs dans la section spécifié d'un fichier d'initialisation avec des paramètres de chaine de caractères étendue (Unicode).
WritePrivateProfileStringA | kernel32.dll | Cette fonction permet de copier une chaine de caractères dans une section spécifié d'un fichier d'initialisation spécifié.
WritePrivateProfileStringW | kernel32.dll | Cette fonction permet de copier une chaine de caractères dans une section spécifié d'un fichier d'initialisation spécifié avec des paramètres de chaine de caractères étendue (Unicode).
WriteProcessMemory | kernel32.dll | Cette fonction permet d'écrire en mémoire pour le processus spécifié.
WriteProfileSectionA | kernel32.dll | Cette fonction permet de remplacer le contenu de la section spécifié dans le fichier «WIN.INI» avec les clefs et les valeurs spécifiés.
WriteProfileSectionW | kernel32.dll | Cette fonction permet de remplacer le contenu de la section spécifié dans le fichier «WIN.INI» avec les clefs et les valeurs spécifiés et avec les paramètres de chaine de caractères étendues (Unicode).
WriteProfileStringA | kernel32.dll | Cette fonction permet de copier une chaine de caractères dans la section spécifié d'un fichier «WIN.INI».
WriteProfileStringW | kernel32.dll | Cette fonction permet de copier une chaine de caractères dans la section spécifié d'un fichier «WIN.INI» avec des paramètres de chaine de caractères étendues (Unicode).
WriteTapemark | kernel32.dll | Cette fonction permet d'écrire une marque de fichier, un fixeur de marque, une marque de fichier court ou une long marque de fichier dans un périphérique de bande magnétique.
wsprintfA | user32.dll | Cette fonction permet d'écrire des données formatté d'une chaine de caractères vers un tampon.
wsprintfW | user32.dll | Cette fonction permet d'écrire des données formatté d'une chaine de caractères vers un tampon avec des paramètres de chaine de caractères étendues (Unicode).
wvsprintfA | user32.dll | Cette fonction permet de formatter et d'entreposer une série de caractères et de valeurs virtuel dans un tampon.
wvsprintfW | user32.dll | Cette fonction permet de formatter et d'entreposer une série de caractères et de valeurs virtuel dans un tampon avec des paramètres de chaine de caractères étendues (Unicode).
_hread | kernel32.dll | Cette fonction permet d'effectuer la lecture de données dans le fichier spécifié.
_hwrite | kernel32.dll | Cette fonction permet d'effectuer l'écriture de données dans le fichier spécifié.
_lclose | kernel32.dll | Cette fonction permet de fermer le fichier Handle spécifié.
_lcreat | kernel32.dll | Cette fonction permet de créer ou ouvrir un fichier spécifié.
_llseek | kernel32.dll | Cette fonction permet de positionner le pointeur du fichier Handle spécifié.
_lread | kernel32.dll | Cette fonction permet d'effectuer la lecture de données dans un fichier spécifié.

Voir également

Articles - Les géants de l'informatique - Microsoft

Dernière mise à jour : Samedi, 5 décembre 2015


C pour Windows - API de Windows avec prototypes

Reference API pour C Windows Prototype

Vu dans ... http://www.gladir.com

Nom de l'API | Prototype | Bibliothèque | Description
AbnormalTermination | BOOL AbnormalTermination(VOID); |  | Cette fonction permet d'indiquer que le «TRY-FINALLY» d'un bloc s'est exécuté normalement.
AbortDoc | int AbortDoc(HDC hdc); | gdi32.dll | Cette fonction permet d'effectuer l'annulation d'une impression d'un document.
AbortPath | BOOL AbortPath(HDC hdc); | gdi32.dll | Cette fonction permet de terminer et de restituer toutes les palettes du périphérique de contexte.
AbortPrinter | BOOL AbortPrinter(HANDLE hPrinter); | winspool.drv | Cette fonction permet d'effacer un fichier dans le tampon d'impression si l'imprimante est configuré avec un tampon d'impression.
AbortSystemShutdownA | BOOL AbortSystemShutdownA(LPSTR lpMachineName); | advapi32.dll | Cette fonction permet d'annuler l'opération de fermeture ou de redémarrage en cours d'exécution du système d'exploitation Windows.
AbortSystemShutdownW | BOOL AbortSystemShutdownW(LPWSTR lpMachineName) | advapi32.dll | Cette fonction permet d'annuler l'opération de fermeture ou de redémarrage en cours d'exécution du système d'exploitation Windows avec des paramètres de chaine de caractères étendue (Unicode).
AccessCheck | BOOL AccessCheck( PSECURITY_DESCRIPTOR pSecurityDescriptor, HANDLE ClientToken, DWORD DesiredAccess, PGENERIC_MAPPING GenericMapping, PPRIVILEGE_SET PrivilegeSet, LPDWORD PrivilegeSetLength, LPDWORD GrantedAccess, LPBOOL AccessStatus ); | advapi32.dll | Cette fonction permet, à une application serveur, de vérifier les accès client à un objet de contrôle d'accès.
AccessCheckAndAuditAlarmA | BOOL AccessCheckAndAuditAlarmA( LPCTSTR SubsystemName, LPVOID HandleId, LPTSTR ObjectTypeName, LPTSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, DWORD DesiredAccess, PGENERIC_MAPPING GenericMapping, BOOL ObjectCreation, LPDWORD GrantedAccess, LPBOOL AccessStatus, LPBOOL pfGenerateOnClose ); | advapi32.dll | Cette fonction permet d'effectuer une validation d'accès et de provoquer le message approprié.
AccessCheckAndAuditAlarmW | BOOL AccessCheckAndAuditAlarmW( LPCWSTR SubsystemName, LPVOID HandleId, LPWSTR ObjectTypeName, LPWSTR ObjectName, PSECURITY_DESCRIPTOR SecurityDescriptor, DWORD DesiredAccess, PGENERIC_MAPPING GenericMapping, BOOL ObjectCreation, LPDWORD GrantedAccess, LPBOOL AccessStatus, LPBOOL pfGenerateOnClose); | advapi32.dll | Cette fonction permet d'effectuer une validation d'accès et de provoquer le message approprié avec des paramètres de chaine de caractères étendue (Unicode).
AcsLan | ACSLAN_STATUS AcsLan(PLLC_CCB pCcb,PLLC_CCB * ppBadCcb); | dlcapi.dll | Cette fonction permet de communiquer avec d'autres ordinateurs ou par périphérique réseau, comme des imprimantes, en utilisant le protocole DLC (Data Link Control).
ActivateKeyboardLayout | HKL ActivateKeyboardLayout(HKL hkl,UINT Flags); | user32.dll | Cette fonction permet d'activer une disposition différente du clavier pour le processus courant.
AddAccessAllowedAce | BOOL AddAccessAllowedAce(PACL pAcl, DWORD dwAceRevision, DWORD AccessMask, PSID pSid); | advapi32.dll | Cette fonction permet d'ajouter un accès autorisé à l'ACE d'un ACL.
AddAccessDeniedAce | BOOL AddAccessDeniedAce(PACL pAcl, DWORD dwAceRevision, DWORD AccessMask,PSID pSid); | advapi32.dll | Cette fonction permet d'ajouter un accès refusé à l'ACE d'un ACL.
AddAce | BOOL AddAce(PACL pAcl, DWORD dwAceRevision, DWORD dwStartingAceIndex, LPVOID pAceList, DWORD nAceListLength); | advapi32.dll | Cette fonction permet d'ajouter un ACE à un ACL spécifié.
AddAtomA | ATOM AddAtomA(LPCSTR lpString); | kernel32.dll | Cette fonction permet d'ajouter une chaine de caractères ASCIZ à l'Atom global.
AddAtomW | ATOM AddAtomW(LPCWSTR lpString); | kernel32.dll | Cette fonction permet d'ajouter un caractère étendue (Unicode) à l'Atom global.
AddAuditAccessAce | BOOL AddAuditAccessAce(PACL pAcl,DWORD dwAceRevision,DWORD dwAccessMask,PSID pSid,BOOL bAuditSuccess,BOOL bAuditFailure); | advapi32.dll | Cette fonction permet d'ajouter un ACE système à un ACL système.
AddFontResourceA | int AddFontResourceA(LPCTSTR lpszFilename); | gdi32.dll | Cette fonction permet d'ajouter une police de caractères à partir d'un fichier.
AddFontResourceW | int AddFontResourceW(LPCWSTR lpszFilename); | gdi32.dll | Cette fonction permet d'ajouter une police de caractères à partir d'un fichier avec des paramètres de chaine de caractères étendues (Unicode).
AddFormA | BOOL AddFormA(HANDLE hPrinter,DWORD Level,LPBYTE pForm); | winspool.drv | Cette fonction permet d'ajouter un formulaire à la liste des formulaires de l'imprimante spécifié.
AddInksetInterval | BOOL AddInksetInterval(HINKSET hinkset, LPINTERVAL lpiNew); | penwin32.dll | Cette fonction permet de fixer l'intervalle de la cartouche d'encre de l'imprimante.
AddJobA | BOOL AddJobA(HANDLE hPrinter, DWORD Level, LPBYTE pData, DWORD cbBuf, LPDWORD pcbNeeded ); | winspool.drv | Cette fonction permet de fixer la chaine de caractères du répertoire contenant les fichiers du tampon d'imprimante.
AddMonitorA | BOOL AddMonitorA( LPTSTR pName, DWORD Level, LPBYTE pMonitors ); | winspool.drv | Cette fonction permet d'installer un moniteur d'imprimante local et des liens de configuration, de données et de fichiers du moniteur.
AddPenDataHRC | int AddPenDataHRC(HRC hrc, HPENDATA hpndt); | penwin32.dll | Cette fonction permet d'ajouter un objet de données de crayon limineux.
AddPenInputHRC | int AddPenInputHRC( HRC hrc, LPPOINT lppt, LPVOID lpvOem, UINT fuOem, LPSTROKEINFO lpsi ); | penwin32.dll | Cette fonction permet d'ajouter un objet de données de crayon limineux exporté.
AddPointsPenData | HPENDATA AddPointsPenData( HPENDATA hpendata, LPPOINT lppt, LPVOID lpvOem, LPSTROKEINFO lpsiNew ) | penwin32.dll | Cette fonction permet d'ajouter un ensemble de point de données à l'objet de crayon limineux.
AddPortA | BOOL AddPortA(LPTSTR pName, HWND hWnd, LPTSTR pMonitorName); | winspool.drv | Cette fonction permet d'ajouter un nom de port à la liste des ports supporté par l'imprimante.
AddPrinterA | HANDLE AddPrinterA( LPTSTR pName, DWORD Level, LPBYTE pPrinter ); | winspool.drv | Cette fonction permet d'ajouter une imprimante à la liste des imprimantes.
AddPrinterConnectionA | BOOL AddPrinterConnectionA(LPTSTR pName); | winspool.drv | Cette fonction permet d'ajouter une connexion à l'imprimante pour l'utilisateur courant.
AddPrinterDriverA | BOOL AddPrinterDriverA( LPTSTR pName, DWORD Level, LPBYTE pDriverInfo ); | winspool.drv | Cette fonction permet d'installer un pilote d'imprimante avec la configuration, les données et les fichiers du pilote.
AddPrintProcessorA | BOOL AddPrintProcessorA( LPTSTR pName, LPTSTR pEnvironment, LPTSTR pPathName, LPTSTR pPrintProcessorName ); | winspool.drv | Cette fonction permet d'installer un processeur d'imprimante à partir d'un serveur et d'une liste processeur d'imprimante supporté.
AddPrintProvidorA | BOOL AddPrintProvidorA( LPTSTR pName, DWORD Level, LPBYTE pProvidorInfo ); | winspool.drv | Cette fonction permet d'installer un fournisseur d'imprimante avec la configuration, les données et les fichiers du fournisseur.
AddWordsHWL | int AddWordsHWL( HWL hwl, LPSTR lpsz, UINT uType ); | penwin32.dll | Cette fonction permet d'ajouter des mots dans une liste de mots.
AdjustTokenGroups | BOOL AdjustTokenGroups( HANDLE TokenHandle, BOOL ResetToDefault, PTOKEN_GROUPS NewState, DWORD BufferLength, PTOKEN_GROUPS PreviousState, PDWORD ReturnLength ); | advapi32.dll | Cette fonction permet d'ajuster des groupes dans une liste d'objet à saisir.
AdjustTokenPrivileges | BOOL AdjustTokenPrivileges( HANDLE TokenHandle, BOOL DisableAllPrivileges, PTOKEN_PRIVILEGES NewState, DWORD BufferLength, PTOKEN_PRIVILEGES PreviousState, PDWORD ReturnLength ); | advapi32.dll | Cette fonction permet d'ajuster des prévilèges dans une liste d'objet à saisir.
AdjustWindowRect | BOOL AdjustWindowRect( LPRECT lpRect, DWORD dwStyle, BOOL bMenu ); | user32.dll | Cette fonction permet de calculer l'espace requis par le rectangle d'une fenêtre basé sur un rectangle client.
AdjustWindowRectEx | BOOL AdjustWindowRectEx( LPRECT lpRect, DWORD dwStyle, BOOL bMenu, DWORD dwExStyle ); | user32.dll | Cette fonction permet de calculer l'espace requis par le rectangle d'une fenêtre avec un style étendue basé sur un rectangle client.
AdvancedDocumentPropertiesA | LONG AdvancedDocumentPropertiesA( HWND hWnd, HANDLE hPrinter, LPTSTR pDeviceName, PDEVMODE pDevModeOutput, PDEVMODE pDevModeInput ); | winspool.drv | Cette fonction permet d'afficher la configuration de l'imprimante spécifié dans une boite de dialogue.
AllocateAndInitializeSid | BOOL AllocateAndInitializeSid( PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, BYTE nSubAuthorityCount, DWORD dwSubAuthority0, DWORD dwSubAuthority1, DWORD dwSubAuthority2, DWORD dwSubAuthority3, DWORD dwSubAuthority4, DWORD dwSubAuthority5, DWORD dwSubAuthority6, DWORD dwSubAuthority7, PSID *pSid ); | advapi32.dll | Cette fonction permet d'alloué ainsi que d'initialiser l'identificateur de sécurité (SID) avec jusqu'à 8 sous-autorités.
AllocateLocallyUniqueId | BOOL AllocateLocallyUniqueId(PLUID Luid); | advapi32.dll | Cette fonction permet d'alloué un identificateur local unique (LUID).
AllocConsole | BOOL AllocConsole(void); | kernel32.dll | Cette fonction permet de créer une nouvelle console.
AngleArc | BOOL AngleArc( HDC hdc, int X, int Y, DWORD dwRadius, FLOAT eStartAngle, FLOAT eSweepAngle ); | gdi32.dll | Cette fonction permet de dessiner une ligne de segment et d'un arc de cercle.
AnimatePalette | BOOL AnimatePalette( HPALETTE hpal, UINT iStartIndex, UINT cEntries, CONST PALETTEENTRY *ppe ); | gdi32.dll | Cette fonction permet de fixer la valeur des palettes de couleur logique.
AnyPopup | BOOL AnyPopup(VOID); | user32.dll | Cette fonction permet d'indiquer s'il existe un moins une fenêtre visible ou invisible sur le bureau de l'écran.
AppendMenuA | BOOL AppendMenuA(HMENU hMenu, UINT uFlags, UINT uIDNewItem, LPCTSTR lpNewItem); | user32.dll | Cette fonction permet d'ajouter un nouvel item au menu courant.
AppendMenuW | BOOL AppendMenuW(HMENU hMenu, UINT uFlags, UINT uIDNewItem, LPCWSTR lpNewItem); | user32.dll | Cette fonction permet d'ajouter un nouvel item au menu courant avec des paramètres de chaine de caractères étendues (Unicode).
Arc | BOOL Arc( HDC hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect, int nXStartArc, int nYStartArc, int nXEndArc, int nYEndArc ); | gdi32.dll | Cette fonction permet de dessiner l'arc d'une ellipse.
ArcTo | BOOL ArcTo( HDC hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect, int nXRadial1, int nYRadial1, int nXRadial2, int nYRadial2 ); | gdi32.dll | Cette fonction permet de dessiner un arc d'une ellipse.
AreAllAccessesGranted | BOOL AreAllAccessesGranted( DWORD GrantedAccess, DWORD DesiredAccess ); | advapi32.dll | Cette fonction permet d'effectuer la vérification sur un ensemble de requête d'accès garantie.
AreAnyAccessesGranted | BOOL AreAnyAccessesGranted( DWORD GrantedAccess, DWORD DesiredAccess ); | advapi32.dll | Cette fonction permet d'effectuer la vérification sur n'importe quel élément d'un ensemble de requête d'accès garantie.
AreFileApisANSI | BOOL AreFileApisANSI(VOID); | kernel32.dll | Cette fonction permet d'indiquer si les fonctions pour fichier du Win32 utilise un ensemble de police de caractères ANSI ou une page OEM.
ArrangeIconicWindows | UINT ArrangeIconicWindows(HWND hWnd); | user32.dll | Cette fonction permet de minimiser les fenêtres enfants d'une fenêtre parente.
AttachThreadInput | BOOL AttachThreadInput( DWORD idAttach, DWORD idAttachTo, BOOL fAttach ); | user32.dll | Cette fonction permet de relier un processus avec un autre.
auxGetDevCapsA | MMRESULT auxGetDevCaps(UINT uDeviceID, LPAUXCAPS lpCaps, UINT cbCaps); | winmm.dll | Cette fonction permet de demander les informations concernant le système audio auxiliaire.
auxGetNumDevs | UINT auxGetNumDevs(void); | winmm.dll | Cette fonction permet de demander le nombre de système audio auxiliaire reconnu par Windows.
BackupEventLogA | BOOL BackupEventLogA( HANDLE hEventLog, LPCTSTR lpBackupFileName ); | advapi32.dll | Cette fonction permet d'effectuer une sauvegarde du journal de bord dans un fichier de copie de sécurité.
BackupEventLogW | BOOL BackupEventLogW( HANDLE hEventLog, LPCWSTR lpBackupFileName ); | advapi32.dll | Cette fonction permet d'effectuer une sauvegarde du journal de bord dans un fichier de copie de sécurité avec des paramètres de chaine de caractères étendue (Unicode).
BackupRead | BOOL BackupRead( HANDLE hFile, LPBYTE lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, BOOL bAbort, BOOL bProcessSecurity, LPVOID *lpContext ); | kernel32.dll | Cette fonction permet d'effectuer la lecture de flux de données associé avec un fichier ou un répertoire spécifié d'un tampon.
BackupSeek | BOOL BackupSeek( HANDLE hFile, DWORD dwLowBytesToSeek, DWORD dwHighBytesToSeek, LPDWORD lpdwLowByteSeeked, LPDWORD lpdwHighByteSeeked, LPVOID * lpContext ); | kernel32.dll | Cette fonction permet de fixer la position dans le flux de données accessible par les fonctions «BackupRead» et «BackupWrite».
BackupWrite | BOOL BackupWrite( HANDLE hFile, LPBYTE lpBuffer, DWORD nNumberOfBytesToWrite, LPDWORD lpNumberOfBytesWritten, BOOL bAbort, BOOL bProcessSecurity, LPVOID *lpContext ); | kernel32.dll | Cette fonction permet d'effectuer l'écriture de flux de données associé avec un fichier ou un répertoire spécifié d'un tampon.
Beep | bool Beep(UInt32 dwFreq, UInt32 dwDuration); | kernel32.dll | Cette fonction permet d'émettre un signal sonore sur le PC Speaker.
BeginDeferWindowPos | HDWP BeginDeferWindowPos(int nNumWindows); | user32.dll | Cette fonction permet d'allouer de la mémoire sur de multiples position de fenêtres d'une structure de données.
BeginPaint | HDC BeginPaint(HWND hwnd, LPPAINTSTRUCT lpPaint); | user32.dll | Cette fonction permet de préparé les spécifications de la fenêtre pour la peindre et la remplir avec les informations de la structure spécifié.
BeginPath | BOOL BeginPath(HDC hdc); | gdi32.dll | Cette fonction permet d'ouvrir une braquette de chemin pour le périphérique de contexte (DC) spécifié.
BeginUpdateResourceA | HANDLE BeginUpdateResourceA( LPCTSTR pFileName, BOOL bDeleteExistingResources ); | kernel32.dll | Cette fonction permet de retourner l'identificateur Handle qu'utilise une fonction «UpdateResource» pour ajouter, supprimer ou remplacer dans un fichier exécutable.
BeginUpdateResourceW | HANDLE BeginUpdateResourceW(LPCWSTR pFileName,BOOL bDeleteExistingResources); | kernel32.dll | Cette fonction permet de retourner l'identificateur Handle qu'utilise une fonction «UpdateResource» pour ajouter, supprimer ou remplacer dans un fichier exécutable avec des paramètres de chaine de caractères étendue (Unicode).
BitBlt | BOOL BitBlt( HDC hdcDest, int nXDest, int nYDest, int nWidth, int nHeight, HDC hdcSrc, int nXSrc, int nYSrc, DWORD dwRop ); | gdi32.dll | Cette fonction permet d'effectuer la copie d'un Bitmap vers l'écran.
BlockInput | BOOL BlockInput(BOOL fBlockIt); | user32.dll | Cette fonction permet d'arrêter les événements d'entrer comme le clavier, la souris,...
BringWindowToTop | BOOL BringWindowToTop(HWND hWnd); | user32.dll | Cette fonction permet d'activer et de porter, en haut de la pile des fenêtres, la fenêtre spécifié.
BroadcastSystemMessageA | long BroadcastSystemMessageA(DWORD dwFlags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'envoyer un message vers un récipient spécifié.
BroadcastSystemMessageW | long BroadcastSystemMessageW(DWORD dwFlags, LPDWORD lpdwRecipients, UINT uiMessage, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'envoyer un message vers un récipient spécifié avec des paramètres de chaine de caractères étendues (Unicode).
BuildCommDCBA | BOOL BuildCommDCBA( LPCTSTR lpDef, LPDCB lpDCB ); | kernel32.dll | Cette fonction permet de remplir une structure DCB avec les valeurs spécifié par une chaine de caractères de périphérique de contrôle.
BuildCommDCBW | BOOL BuildCommDCBW(LPCWSTR devid, LPDCB lpdcb); | kernel32.dll | Cette fonction permet de remplir une structure DCB avec les valeurs spécifié par une chaine de caractères de périphérique de contrôle avec des paramètres de chaine de caractères étendue (Unicode).
BuildCommDCBAndTimeoutsA | BOOL BuildCommDCBAndTimeoutsA( LPCTSTR lpDef, LPDCB lpDCB, LPCOMMTIMEOUTS lpCommTimeouts ); | kernel32.dll | Cette fonction permet de convertir la chaine de caractères des définitions d'un périphérique en un bloc de périphérique de contrôle et de placer les codes dans un bloc dans le périphérique de contrôle.
BuildCommDCBAndTimeoutsW | BOOL BuildCommDCBAndTimeoutsW( LPCWSTR devid, LPDCB lpdcb, LPCOMMTIMEOUTS lptimeouts ); | kernel32.dll | Cette fonction permet de convertir la chaine de caractères des définitions d'un périphérique en un bloc de périphérique de contrôle et de placer les codes dans un bloc dans le périphérique de contrôle avec des paramètres de chaine de caractères étendue (Unicode).
CallMsgFilterA | BOOL CallMsgFilterA(LPMSG lpMsg, int nCode); | user32.dll | Cette fonction permet de passer un message à la fonction de filtre de message courant.
CallMsgFilterW | BOOL CallMsgFilterW(LPMSG lpMsg, int nCode); | user32.dll | Cette fonction permet de passer un message à la fonction de filtre de message courant avec des paramètres de chaine de caractères étendues (Unicode).
CallNamedPipeA | BOOL CallNamedPipeA( LPCTSTR lpNamedPipeName, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesRead, DWORD nTimeOut ); | kernel32.dll | Cette fonction permet d'effectuer une connection à l'aide d'un tuyau de type de message et de lire et d'écrire dans se tuyau et d'ensuite fermer le tuyau.
CallNamedPipeW | BOOL CallNamedPipeW( LPCWSTR lpNamedPipeName, PVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, PDWORD lpBytesRead, DWORD nTimeOut ); | kernel32.dll | Cette fonction permet d'effectuer une connection à l'aide d'un tuyau de type de message et de lire et d'écrire dans se tuyau et d'ensuite fermer le tuyau avec des paramètres de chaine de caractères étendue (Unicode).
CallNextHookEx | LRESULT CallNextHookEx(HHOOK hhk, int nCode, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet de passer au prochain crochet des informations de crochet dans une chaine de crochet.
CallWindowProcA | LRESULT CallWindowProcA(WNDPROC lpPrevWndFunc, HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'appeler et de passer des informations de message à la fonction de fenêtre spécifié.
CallWindowProcW | LRESULT CallWindowProcW(WNDPROC func, HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'appeler et de passer des informations de message à la fonction de fenêtre spécifié avec des paramètres de chaine de caractères étendues (Unicode).
CancelDC | BOOL CancelDC(HDC hdc); | gdi32.dll | Cette fonction permet d'annuler une opération en attente pour le périphérique de contexte (DC) spécifié.
CancelIo | BOOL CancelIo(HANDLE handle); | kernel32.dll | Cette fonction permet d'annuler une opération d'entrée/sortie initié par un processus léger dans un fichier.
CancelWaitableTimer | BOOL CancelWaitableTimer(HANDLE hTimer); | kernel32.dll | Cette fonction permet de fixer le délai d'attente de l'horloge à un état inactif.
CascadeWindows | WORD CascadeWindows(HWND hwndParent, UINT wHow, CONST RECT * lpRect, UINT cKids, const HWND FAR * lpKids); | user32.dll | Cette fonction permet d'effectuer des cascades de fenêtre spécifié ou de fenêtre enfant dans la fenêtre parent spécifié.
ChangeClipboardChain | BOOL ChangeClipboardChain(HWND hWndRemove, HWND hWndNewNext); | user32.dll | Cette fonction permet d'enlever le premier élément de la chaine du visualisateur de presse-papier et de le remplacer par le deuxième élément spécifié.
ChangeDisplaySettingsA | LONG ChangeDisplaySettingsA(LPDEVMODE lpDevMode, DWORD dwflags); | user32.dll | Cette fonction permet de modifier les paramètres du mode d'affichage graphique
ChangeDisplaySettingsW | LONG ChangeDisplaySettingsW(PDEVMODEW lpDevMode, DWORD dwflags); | user32.dll | Cette fonction permet de modifier les paramètres du mode d'affichage graphique avec des paramètres de chaine de caractères étendues (Unicode).
ChangeDisplaySettingsExA | LONG ChangeDisplaySettingsExA(LPCTSTR lpszDeviceName, DEVMODE *lpDevMode, HWND hwnd, DWORD dwflags, LPVOID lParam); | user32.dll | Cette fonction permet de modifier les paramètres du mode d'affichage graphique pour le périphérique d'affichage spécifié.
ChangeDisplaySettingsExW | LONG ChangeDisplaySettingsExW(LPCWSTR lpszDeviceName, LPDEVMODEW *lpDevMode, HWND hwnd, DWORD dwflags, LPVOID lParam); | user32.dll | Cette fonction permet de modifier les paramètres du mode d'affichage graphique pour le périphérique d'affichage spécifié avec des paramètres de chaine de caractères étendues (Unicode).
ChangeMenuA | int ChangeMenuA(HMENU hMenu, UINT wID, LPCSTR lpszNew, UINT wIDNew, UINT wChange); | user32.dll | Cette fonction permet de modifier un élément du menu spécifié.
ChangeMenuW | int ChangeMenuW(HMENU hMenu, UINT wID, LPCWSTR lpszNew, UINT wIDNew, UINT wChange); | user32.dll | Cette fonction permet de modifier un élément du menu spécifié avec des paramètres de chaine de caractères étendues (Unicode).
CharLowerA | LPTSTR CharLowerA(LPTSTR lpsz); | user32.dll | Cette fonction permet d'effectuer la conversion d'une chaine de caractères spécifié en minuscule.
CharLowerBuffA | DWORD CharLowerBuffA(LPTSTR lpsz, DWORD cchLength); | user32.dll | Cette fonction permet d'effectuer la conversion des caractères majuscules contenu dans un tampon en caractères minuscule.
CharLowerBuffW | DWORD CharLowerBuffW(LPWSTR lpsz, DWORD cchLength); | user32.dll | Cette fonction permet d'effectuer la conversion des caractères majuscules contenu dans un tampon en caractères minuscule avec des paramètres de chaine de caractères étendues (Unicode).
CharLowerW | LPWSTR CharLowerW(LPWSTR lpsz); | user32.dll | Cette fonction permet d'effectuer la conversion d'une chaine de caractères spécifié en minuscule avec des paramètres de chaine de caractères étendues (Unicode).
CharNextA | LPTSTR CharNextA(LPCTSTR lpsz); | user32.dll | Cette fonction permet de retourner un pointeur sur le prochaine caractère contenu dans une chaine de caractères.
CharNextExA | LPSTR CharNextExA(WORD CodePage, LPCSTR lpCurrentChar, DWORD dwFlags); | user32.dll | Cette fonction permet de retourner l'adresse du prochaine caractère contenu dans une chaine de caractères.
CharNextW | LPWSTR CharNextW(LPCWSTR lpsz); | user32.dll | Cette fonction permet de retourner un pointeur sur le prochaine caractère contenu dans une chaine de caractères avec des paramètres de chaine de caractères étendues (Unicode).
CharPrevA | LPTSTR CharPrevA(LPCTSTR lpszStart, LPCTSTR lpszCurrent); | user32.dll | Cette fonction permet de retourner un pointeur sur le caractère précédent contenu dans une chaine de caractères.
CharPrevExA | LPSTR CharPrevExA(WORD CodePage, LPCSTR lpStart, LPCSTR lpCurrentChar, DWORD dwFlags); | user32.dll | Cette fonction permet de retourner l'adresse du caractère précédent contenu dans une chaine de caractères.
CharPrevW | LPWSTR CharPrevW(LPCWSTR lpszStart, LPCWSTR lpszCurrent); | user32.dll | Cette fonction permet de retourner un pointeur sur le caractère précédent contenu dans une chaine de caractères avec des paramètres de chaine de caractères étendues (Unicode).
CharToOemA | BOOL CharToOemA(LPCTSTR lpszSrc, LPSTR lpszDst); | user32.dll | Cette fonction permet d'effectuer la transformation d'une chaine de caractères en ensemble de caractères OEM utilisateur.
CharToOemBuffA | BOOL CharToOemBuffA(LPCTSTR lpszSrc, LPSTR lpszDst, DWORD cchDstLength); | user32.dll | Cette fonction permet d'effectuer la transformation d'un nombre spécifique de caractères dans une chaine de caractères d'un ensemble de caractères OEM utilisateur.
CharToOemBuffW | BOOL CharToOemBuffW(LPCWSTR lpszSrc, LPSTR lpszDst, DWORD cchDstLength); | user32.dll | Cette fonction permet d'effectuer la transformation d'un nombre spécifique de caractères dans une chaine de caractères d'un ensemble de caractères OEM utilisateur avec des paramètres de chaine de caractères étendues (Unicode).
CharToOemW | BOOL CharToOemW(LPCWSTR lpszSrc, LPSTR lpszDst); | user32.dll | Cette fonction permet d'effectuer la transformation d'une chaine de caractères en ensemble de caractères OEM utilisateur avec des paramètres de chaine de caractères étendues (Unicode).
CharUpperA | LPTSTR CharUpperA(LPTSTR lpsz); | user32.dll | Cette fonction permet d'effectuer la conversion d'une chaine de caractères spécifié en majuscule.
CharUpperBuffA | DWORD CharUpperBuffA(LPTSTR lpsz, DWORD cchLength); | user32.dll | Cette fonction permet d'effectuer la conversion des caractères minuscules contenu dans un tampon en caractères majuscule.
CharUpperBuffW | DWORD CharUpperBuffW(LPWSTR lpsz, DWORD cchLength); | user32.dll | Cette fonction permet d'effectuer la conversion des caractères minuscules contenu dans un tampon en caractères majuscule avec des paramètres de chaine de caractères étendues (Unicode).
CharUpperW | LPWSTR CharUpperW(LPWSTR lpsz); | user32.dll | Cette fonction permet d'effectuer la conversion d'une chaine de caractères spécifié en majuscule avec des paramètres de chaine de caractères étendues (Unicode).
CheckColorsInGamut | BOOL CheckColorsInGamut(HDC hdc, LPVOID lpaRGBQuad, LPVOID lpResult, DWORD nCount); | gdi32.dll | Cette fonction permet d'indiquer si les valeurs de couleurs spécifiés sont dans la gamme du périphérique spécifié.
CheckDlgButton | BOOL CheckDlgButton(HWND hDlg, int nIDButton, UINT uCheck); | user32.dll | Cette fonction permet de fixer ou d'enlever une marque de vérification d'un bouton de contrôle ou de changer l'état d'un contrôle d'arbre de bouton.
CheckMenuItem | DWORD CheckMenuItem(HMENU hmenu, UINT uIDCheckItem, UINT uCheck); | user32.dll | Cette fonction permet de fixer ou d'enlever un marque de vérification d'un item de menu dans un menu contextuel.
CheckMenuRadioItem | BOOL CheckMenuRadioItem(HMENU hmenu, UINT idFirst, UINT idLast, UINT idCheck, UINT uFlags); | user32.dll | Cette fonction permet de vérifier l'item de menu spécifié et de fabriquer un item radio.
CheckRadioButton | BOOL CheckRadioButton(HWND hDlg, int nIDFirstButton, int nIDLastButton, int nIDCheckButton); | user32.dll | Cette fonction permet de vérifier ou d'enlever un marque de vérification d'un groupe de bouton radio spécifié.
ChildWindowFromPoint | HWND ChildWindowFromPoint(HWND hWndParent, POINT Point); | user32.dll | Cette fonction permet de demander le propriétaire de la fenêtre enfant à l'aide d'une coordonnée spécifié.
ChildWindowFromPointEx | HWND ChildWindowFromPointEx(HWND hwndParent, POINT pt, UINT uFlags); | user32.dll | Cette fonction permet de demander lequel des fenêtres enfants, si possible, appartient à la fenêtre parent du point spécifié.
ChooseColorA | BOOL ChooseColorA(LPCHOOSECOLOR lpcc); | comdlg32.dll | Cette fonction permet de lancer une boite de dialogue offrant la possibilité à l'utilisateur de choisir une couleur
ChooseFontA | BOOL ChooseFontA(LPCHOOSEFONT lpcf); | comdlg32.dll | Cette fonction permet de lancer une boite de dialogue offrant la possibilité à l'utilisateur de choisir une police de caractères
ChoosePixelFormat | int ChoosePixelFormat(HDC hdc, const PIXELFORMATDESCRIPTOR *ppfd); | gdi32.dll | Cette fonction permet de tenter de faire correspondre à un format de pixel approprié supporté par un périphérique de contexte d'un format de pixel donné spécifié.
Chord | BOOL Chord(HDC hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect, int nXRadial1, int nYRadial1, int nXRadial2, int nYRadial2); | gdi32.dll | Cette fonction permet de dessiner la corde de limite à l'aide d'une intersection d'une ellipse avec le centre d'un rectangle et d'une ligne de segment.
ClearCommBreak | BOOL ClearCommBreak(HANDLE hFile); | kernel32.dll | Cette fonction permet de restituer les caractères transmis par un périphérique de communications spécifié et place ligne de transmission dans un état non arrêtable.
ClearCommError | BOOL ClearCommError( HANDLE hFile, LPDWORD lpErrors, LPCOMSTAT lpStat ); | kernel32.dll | Cette fonction permet de demander des informations à propos d'erreur de communications et un rapport d'état actuel sur un périphérique de communication.
ClearEventLogA | BOOL ClearEventLogA( HANDLE hEventLog, LPCTSTR lpBackupFileName ); | advapi32.dll | Cette fonction permet d'effacer le journal de bord spécifié et sauvegarde une copie du journal du bord courant dans un fichier si désiré.
ClearEventLogW | BOOL ClearEventLogW( HANDLE hEventLog, LPCWSTR lpBackupFileName ); | advapi32.dll | Cette fonction permet d'effacer le journal de bord spécifié et sauvegarde une copie du journal du bord courant dans un fichier si désiré avec des paramètres de chaine de caractères étendue (Unicode).
ClientToScreen | BOOL ClientToScreen(HWND hWnd,LPPOINT lpPoint); | user32.dll | Cette fonction permet d'effectuer la transformation des coordonnées logique du client en coordonnées physiquement sur l'écran
ClipCursor | BOOL ClipCursor(CONST RECT * lpRect); | user32.dll | Cette fonction permet de définir une fenêtre limitant le déplacement du pointeur de la souris.
CloseClipboard | BOOL CloseClipboard(VOID); | user32.dll | Cette fonction permet d'indiquer que le traitement avec le presse-papier est terminé et que les autres applications peuvent maintenant avoir accès aux données qu'elle contient.
CloseDesktop | BOOL CloseDesktop(HDESK hDesktop); | user32.dll | Cette fonction permet de fermer ou d'ouvrir le Handle de l'objet de bureau.
CloseEnhMetaFile | HENHMETAFILE CloseEnhMetaFile(HDC hdc); | gdi32.dll | Cette fonction permet de fermer un périphérique de contexte de fichier méta étendue et retourne le Handle identifiant un format de fichier méta étendue.
CloseEventLog | BOOL CloseEventLog(HANDLE hEventLog); | advapi32.dll | Cette fonction permet de fermer le fichier de journal de bord d'événement spécifié
CloseFigure | BOOL CloseFigure(HDC hdc); | gdi32.dll | Cette fonction permet de fermer une figure dans une spécification de chemin.
CloseHandle | BOOL CloseHandle(HANDLE hObject); | kernel32.dll | Cette fonction permet d'effectuer la fermeture d'un Handle.
CloseMetaFile | HMETAFILE CloseMetaFile(HDC hdc); | gdi32.dll | Cette fonction permet de fermer et de créer le fichier de méta pour pouvoir jouer son contenu.
ClosePrinter | BOOL ClosePrinter(HANDLE hPrinter); | winspool.drv | Cette fonction permet d'indiquer que le traitement avec le tampon d'impression de l'imprimante est terminé.
CloseWindow | BOOL CloseWindow(HWND hWnd); | user32.dll | Cette fonction permet de minimiser (sans la détruire) la fenêtre spécifié.
CloseWindowStation | BOOL CloseWindowStation(HWINSTA hWinSta); | user32.dll | Cette fonction permet de fermer un Handle de fenêtre de station ouverte.
CoCreateGuid | HRESULT CoCreateGuid(GUID * pguid); | ole32.dll | Cette fonction permet de créer un identificateur global unique GUID (Global Unique ID) générer sur une base de 128-bits pouvant être utilisé par exemple pour les identificateurs de classe CLSID.
ColorMatchToTarget | BOOL ColorMatchToTarget(HDC hdc, HDC hdcTarget, DWORD uiAction); | gdi32.dll | Cette fonction permet d'activer ou désactiver le prévisualisation du périphérique de contexte spécifié.
CombineRgn | int CombineRgn(HRGN hrgnDest, HRGN hrgnSrc1, HRGN hrgnSrc2, int fnCombineMode); | gdi32.dll | Cette fonction permet de créer une nouvelle région pour combiné deux régions existantes.
CombineTransform | BOOL CombineTransform(LPXFORM lpxformResult, const XFORM *lpxform1, const XFORM *lpxform2); | gdi32.dll | Cette fonction permet d'effectuer la concaténation de double espace mondiale vers une transformation d'espace de page.
CommConfigDialogA | BOOL CommConfigDialogA( LPTSTR lpszName, HWND hWnd, LPCOMMCONFIG lpCC, ); | kernel32.dll | Cette fonction permet d'afficher une configuration de pilote de fournisseur dans une boite de dialogue.
CommConfigDialogW | BOOL CommConfigDialogW( LPCWSTR lpszDevice, HWND hWnd, LPCOMMCONFIG lpCommConfig ); | kernel32.dll | Cette fonction permet d'afficher une configuration de pilote de fournisseur dans une boite de dialogue avec des paramètres de chaine de caractères étendue (Unicode).
CompareFileTime | LONG CompareFileTime( CONST FILETIME *lpFileTime1, CONST FILETIME *lpFileTime2 ); | kernel32.dll | Cette fonction permet de comparer deux temps de fichier de 64-bits.
CompareStringA | int CompareStringA(LCID Locale, DWORD dwCmpFlags, LPCTSTR lpString1, int cchCount1, LPCTSTR lpString2, int cchCount2 ); | kernel32.dll | Cette fonction permet d'effectuer la comparaison de deux chaines de caractères ASCIZ.
CompareStringW | INT CompareStringW( LCID lcid, DWORD style, LPCWSTR str1, INT len1, LPCWSTR str2, INT len2 ); | kernel32.dll | Cette fonction permet d'effectuer la comparaison de deux chaines de caractères Unicode.
ConfigurePortA | BOOL ConfigurePortA(LPTSTR pName,HWND hWnd,LPTSTR pPortName); | winspool.drv | Cette fonction permet de lancer une boite de dialogue offrant la possibilité à l'utilisateur de choisir le port parallèle ou USB d'imprimante
ConnectNamedPipe | BOOL ConnectNamedPipe( HANDLE hNamedPipe, LPOVERLAPPED lpOverlapped ); | kernel32.dll | Cette fonction permet d'activé un nom de tuyau d'un processus serveur en attente pour un processus client de connexion.
ContinueDebugEvent | BOOL ContinueDebugEvent( DWORD dwProcessId, DWORD dwThreadId, DWORD dwContinueStatus ); | kernel32.dll | Cette fonction permet d'activer un débogueur pour qu'il continue un processus précédemment rapporter comme un bogue d'événement.
ConvertDefaultLocale | LCID ConvertDefaultLocale(LCID Locale); | kernel32.dll | Cette fonction permet de convertir une valeur locale spécial par défaut en un identificatuer local courant.
ConvertThreadToFiber | LPVOID ConvertThreadToFiber(LPVOID lpParameter); | kernel32.dll | Cette fonction permet d'effectuer la conversion d'un processus léger vers un fibre.
CopyAcceleratorTableA | int CopyAcceleratorTableA(HACCEL hAccelSrc, LPACCEL lpAccelDst, int cAccelEntries); | user32.dll | Cette fonction permet de copier la table d'accélérateur spécifié.
CopyAcceleratorTableW | int CopyAcceleratorTableW(HACCEL hAccelSrc, LPACCEL lpAccelDst, int cAccelEntries); | user32.dll | Cette fonction permet de copier la table d'accélérateur spécifié avec des paramètres de chaine de caractères étendues (Unicode).
CopyEnhMetaFileA | HENHMETAFILE CopyEnhMetaFileA(HENHMETAFILE hemfSrc, LPCTSTR lpszFile); | gdi32.dll | Cette fonction permet de copier le contenu d'un fichier méta de format étendue vers un fichier spécifié.
CopyEnhMetaFileW | HENHMETAFILE CopyEnhMetaFileW(HENHMETAFILE hmfSrc, LPCWSTR file); | gdi32.dll | Cette fonction permet de copier le contenu d'un fichier méta de format étendue vers un fichier spécifié avec des paramètres de chaine de caractères étendues (Unicode).
CopyFileA | BOOL CopyFileA(LPCTSTR lpExistingFileName,LPCTSTR lpNewFileName,BOOL bFailIfExists); | kernel32.dll | Cette fonction permet d'effectuer la copie d'un fichier d'un emplacement à un autre emplacement
CopyFileExA | BOOL CopyFileExA( LPCSTR lpExistingFileName, LPCSTR lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, LPBOOL pbCancel, DWORD dwCopyFlags ); | kernel32.dll | Cette fonction permet d'effectuer la copie d'un fichier d'un emplacement à un autre emplacement tout en effectuant un processus d'arrière plan indiquant sa progression.
CopyFileExW | BOOL CopyFileExW( LPCWSTR lpExistingFileName, LPCWSTR lpNewFileName, LPPROGRESS_ROUTINE lpProgressRoutine, LPVOID lpData, LPBOOL pbCancel, DWORD dwCopyFlags); | kernel32.dll | Cette fonction permet d'effectuer la copie d'un fichier d'un emplacement à un autre emplacement tout en effectuant un processus d'arrière plan indiquant sa progression avec des paramètres de chaine de caractères étendue (Unicode).
CopyFileW | BOOL CopyFileW( WCHAR *from, WCHAR *to, BOOL bFailIfExists); | kernel32.dll | Cette fonction permet d'effectuer la copie d'un fichier d'un emplacement à un autre emplacement avec des paramètres de chaine de caractères étendue (Unicode).
CopyIcon | HICON CopyIcon(HICON hIcon); | user32.dll | Cette fonction permet de copier un icône spécifié d'un autre module vers le module courant.
CopyImage | HANDLE CopyImage(HANDLE hImage, UINT uType, int cxDesired, int cyDesired, UINT fuFlags); | user32.dll | Cette fonction permet de créer une nouvelle image (icône, image ou Bitmap) et de copier les attributs de l'image donnée dans une nouvelle image.
CopyMetaFileA | HMETAFILE CopyMetaFileA(HMETAFILE hmfSrc, LPCTSTR lpszFile); | gdi32.dll | Cette fonction permet de copier le contenu d'un format de méta fichier Windows vers un fichier spécifié.
CopyMetaFileW | HMETAFILE CopyMetaFileW(HMETAFILE hSrcMetaFile, LPCWSTR lpFilename); | gdi32.dll | Cette fonction permet de copier le contenu d'un format de méta fichier Windows vers un fichier spécifié avec des paramètres de chaine de caractères étendues (Unicode).
CopyRect | BOOL CopyRect(LPRECT lprcDst, CONST RECT *lprcSrc); | user32.dll | Cette fonction permet d'effectuer la copie des coordonnées d'un rectangle dans un autre rectangle.
CopySid | BOOL CopySid( DWORD nDestinationSidLength, PSID pDestinationSid, PSID pSourceSid ); | advapi32.dll | Cette fonction permet de copier l'identificateur de sécurité (SID) dans un tampon spécifié.
CountClipboardFormats | int CountClipboardFormats(VOID); | user32.dll | Cette fonction permet de demander le nombre de différentes données de formats courant que contient le presse-papier.
CreateAcceleratorTableA | HACCEL CreateAcceleratorTableA(LPACCEL lpaccl, int cEntries); | user32.dll | Cette fonction permet de créer une table d'accélérateur.
CreateAcceleratorTableW | HACCEL CreateAcceleratorTableW(LPACCEL lpaccl, int cEntries); | user32.dll | Cette fonction permet de créer une table d'accélérateur avec des paramètres de chaine de caractères étendues (Unicode).
CreateBitmap | HBITMAP CreateBitmap(int nWidth, int nHeight, UINT cPlanes, UINT cBitsPerPel, const void *lpvBits); | gdi32.dll | Cette fonction permet de créer un périphérique de Bitmap en mémoire avec la largeur, hauteur et la palette de bits spécifié.
CreateBitmapIndirect | HBITMAP CreateBitmapIndirect(CONST BITMAP *lpbm); | gdi32.dll | Cette fonction permet de créer un Bitmap avec la largeur, la hauteur et la palette de bits spécifié dans une structure BITMAP.
CreateBrushIndirect | HBRUSH CreateBrushIndirect(CONST LOGBRUSH * lplb); | gdi32.dll | Cette fonction permet de créer une brosse avec le style, la couleur et la palette spécifié dans la structure «LOGBRUSH».
CreateCaret | BOOL CreateCaret(HWND hWnd, HBITMAP hBitmap, int nWidth, int nHeight); | user32.dll | Cette fonction permet de créer un nouveau signe pour le curseur texte et associe le propriétaire à la fenêtre spécifié.
CreateColorSpaceA | HCOLORSPACE CreateColorSpaceA(LPLOGCOLORSPACE lpLogColorSpace); | gdi32.dll | Cette fonction permet de créer un espace de couleur logique.
CreateColorSpaceW | HCOLORSPACE CreateColorSpaceW(LPLOGCOLORSPACEW lpLogColorSpace); | gdi32.dll | Cette fonction permet de créer un espace de couleur logique avec des paramètres de chaine de caractères étendues (Unicode).
CreateCompatibleBitmap | HBITMAP CreateCompatibleBitmap(HDC hdc, int nWidth, int nHeight); | gdi32.dll | Cette fonction permet de créer un Bitmap compatible avec le périphérique spécifié.
CreateCompatibleDC | HDC CreateCompatibleDC(HDC hdc); | gdi32.dll | Cette fonction permet de créer un contexte de périphérique mémoire compatible avec le périphérique spécifié.
CreateConsoleScreenBuffer | HANDLE CreateConsoleScreenBuffer( DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES *lpSecurityAttributes, DWORD dwFlags, LPVOID lpScreenBufferData ); | kernel32.dll | Cette fonction permet de créer un tampon de console écran et de retourner un identificateur Handle associée à celui-ci.
CreateCursor | HCURSOR CreateCursor(HINSTANCE hInst, int xHotSpot, int yHotSpot, int nWidth, int nHeight, CONST VOID *pvANDPlane, CONST VOID *pvXORPlane ); | user32.dll | Cette fonction permet d'effectuer la création d'une nouvelle image de pointeur de souris
CreateDCA | HDC CreateDCA( LPCTSTR lpszDriver, LPCTSTR lpszDevice, LPCTSTR lpszOutput, CONST DEVMODE *lpInitData ); | gdi32.dll | Cette fonction permet d'effectuer la création d'un objet de contexte (DC)
CreateDCW | HDC CreateDCW(LPCWSTR lpszDriver, LPCWSTR lpszDevice,LPCWSTR lpszOutput,const DEVMODEW * lpInitData); | gdi32.dll | Cette fonction permet d'effectuer la création d'un objet de contexte (DC) avec des paramètres de chaines de caractères étendues (Unicode).
CreateDesktopA | HDESK CreateDesktopA(LPCTSTR lpszDesktop, LPCTSTR lpszDevice, LPDEVMODE pDevMode, DWORD dwFlags, DWORD dwDesiredAccess, LPSECURITY_ATTRIBUTES lpsa); | user32.dll | Cette fonction permet de créer un nouveau bureau dans une fenêtre de station associé avec le processus appelant.
CreateDesktopW | HDESK CreateDesktopW(LPCWSTR lpszDesktop, LPCWSTR lpszDevice, LPDEVMODEW pDevMode, DWORD dwFlags, DWORD dwDesiredAccess, LPSECURITY_ATTRIBUTES lpsa); | user32.dll | Cette fonction permet de créer un nouveau bureau dans une fenêtre de station associé avec le processus appelant avec des paramètres de chaine de caractères étendues (Unicode).
CreateDialogIndirectParamA | HWND CreateDialogIndirectParamA(HINSTANCE hInstance, LPCDLGTEMPLATE lpTemplate, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM lParamInit); | user32.dll | Cette fonction permet de créer un modèle de boite de dialogue pour un gabarit de boite de dialogue en mémoire et après son affichage, la fonction passe une valeur d'application à la procédure de boite de dialogue avec les paramètres spécifié du message «WM_INITDIALOG».
CreateDialogIndirectParamW | HWND CreateDialogIndirectParamW(HINSTANCE hInstance, LPCDLGTEMPLATE lpTemplate, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM lParamInit); | user32.dll | Cette fonction permet de créer un modèle de boite de dialogue pour un gabarit de boite de dialogue en mémoire et après son affichage, la fonction passe une valeur d'application à la procédure de boite de dialogue avec les paramètres spécifié du message «WM_INITDIALOG» avec des paramètres de chaine de caractères étendues (Unicode).
CreateDialogParamA | HWND CreateDialogParamA(HINSTANCE hInstance, LPCTSTR lpTemplateName, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam); | user32.dll | Cette fonction permet de créer un modèle de boite de dialogue pour une ressource de gabarit de boite de dialogue et après son affichage, la fonction passe une valeur d'application à la procédure de boite de dialogue avec les paramètres spécifié du message «WM_INITDIALOG».
CreateDialogParamW | HWND CreateDialogParamW(HINSTANCE hInstance, LPCWSTR lpTemplateName, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam); | user32.dll | Cette fonction permet de créer un modèle de boite de dialogue pour une ressource de gabarit de boite de dialogue et après son affichage, la fonction passe une valeur d'application à la procédure de boite de dialogue avec les paramètres spécifié du message «WM_INITDIALOG» avec des paramètres de chaine de caractères étendues (Unicode).
CreateDIBPatternBrush | HBRUSH CreateDIBPatternBrush(HGLOBAL hglbDIBPacked, UINT fuColorSpec); | gdi32.dll | Cette fonction permet de créer une brosse avec la palette spécifié par un périphérique de Bitmap indépendant (DIB).
CreateDIBPatternBrushPt | HBRUSH CreateDIBPatternBrushPt(CONST VOID * lpPackedDIB, UINT iUsage); | gdi32.dll | Cette fonction permet de créer une brosse logique avec la palette spécifié par un périphérique de Bitmap indépendant (DIB).
CreateDIBSection | HBITMAP CreateDIBSection(HDC hdc, CONST BITMAPINFO *pbmi, UINT iUsage, VOID **ppvBits, HANDLE hSection, DWORD dwOffset); | gdi32.dll | Cette fonction permet de créer un Bitmap de périphérique indépendant (DIB) avec les applications pouvant y être écrit directement.
CreateDIBitmap | HBITMAP CreateDIBitmap(HDC hdc, CONST BITMAPINFOHEADER * lpbmih, DWORD fdwInit, CONST VOID *lpbInit, CONST BITMAPINFO * lpbmi, UINT fuUsage); | gdi32.dll | Cette fonction permet de créer un périphérique mémoire spécifié pour un périphérique de Bitmap indépendant (DIB) spécifié et un ensemble de bits optionnel pour le Bitmap.
CreateDirectoryA | BOOL CreateDirectoryA( LPCTSTR lpPathName, LPSECURITY_ATTRIBUTES lpSecurityAttributes ); | kernel32.dll | Cette fonction permet d'effectuer la création d'un répertoire
CreateDirectoryW | BOOL CreateDirectoryW(LPCWSTR lpPathName,LPSECURITY_ATTRIBUTES lpSecurityAttributes); | kernel32.dll | Cette fonction permet d'effectuer la création d'un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
CreateDirectoryExA | BOOL CreateDirectoryExA( LPCTSTR lpTemplateDirectory, LPCTSTR lpNewDirectory, LPSECURITY_ATTRIBUTES lpSecurityAttributes ); | kernel32.dll | Cette fonction permet d'effectuer la création d'un répertoire étendue
CreateDirectoryExW | BOOL CreateDirectoryExW( LPCWSTR lpTemplateDirectory, LPCWSTR lpNewDirectory, LPSECURITY_ATTRIBUTES lpSecurityAttributes ); | kernel32.dll | Cette fonction permet d'effectuer la création d'un répertoire étendue avec des paramètres de chaine de caractères étendue (Unicode).
CreateDirectoryTransactedA | BOOL CreateDirectoryTransactedA( LPCTSTR lpTemplateDirectory, LPCTSTR lpNewDirectory, LPSECURITY_ATTRIBUTES lpSecurityAttributes, HANDLE hTransaction ); | kernel32.dll | Cette fonction permet d'effectuer la création d'un répertoire dans une opération de transaction
CreateDirectoryTransactedW | BOOL CreateDirectoryTransactedW( LPCTWSTR lpTemplateDirectory, LPCTWSTR lpNewDirectory, LPSECURITY_ATTRIBUTES lpSecurityAttributes, HANDLE hTransaction ); | kernel32.dll | Cette fonction permet d'effectuer la création d'un répertoire dans une opération de transaction avec des paramètres de chaine de caractères étendue (Unicode).
CreateDiscardableBitmap | HBITMAP CreateDiscardableBitmap(HDC hdc, int nWidth, int nHeight); | gdi32.dll | Cette fonction permet de créer un Bitmap compatible avec un périphérique spécifié.
CreateEllipticRgn | HRGN CreateEllipticRgn(int nLeftRect, int nTopRect, int nRightRect, int nBottomRect); | gdi32.dll | Cette fonction permet de créer une région elliptique.
CreateEllipticRgnIndirect | HRGN CreateEllipticRgnIndirect(CONST RECT *lprc); | gdi32.dll | Cette fonction permet de créer une région elliptique à l'aide d'une structure de données.
CreateEnhMetaFileA | HDC CreateEnhMetaFileA(HDC hdcRef, LPCTSTR lpFilename, CONST RECT * lpRect, LPCTSTR lpDescription); | gdi32.dll | Cette fonction permet de créer un contexte de périphérique pour un méta fichier de format étendue.
CreateEnhMetaFileW | HDC CreateEnhMetaFileW(HDC hdcRef, LPCWSTR lpFilename, const RECT *lpRect, LPCWSTR lpDescription); | gdi32.dll | Cette fonction permet de créer un contexte de périphérique pour un méta fichier de format étendue avec des paramètres de chaine de caractères étendues (Unicode).
CreateEventA | HANDLE CreateEventA( LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPCTSTR lpName ); | kernel32.dll | Cette fonction permet de créer un objet d'événement nommé ou non-nommé.
CreateEventW | HANDLE CreateEventW( LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPCWSTR lpName ); | kernel32.dll | Cette fonction permet de créer un objet d'événement nommé ou non-nommé avec des paramètres de chaine de caractères étendue (Unicode).
CreateFiber | LPVOID CreateFiber( SIZE_T dwStackSize, LPFIBER_START_ROUTINE lpStartAddress, LPVOID lpParameter ); | kernel32.dll | Cette fonction permet d'allouer un objet de fibre, en lui attribuant une pile, et en fixant le début de l'exécutant à l'adresse de début spécifié.
CreateFileA | HANDLE CreateFileA( LPCTSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDistribution, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile ); | kernel32.dll | Cette fonction permet d'effectuer la création ou l'ouverture d'un fichier ou d'un périphérique.
CreateFileW | HANDLE CreateFileW( LPCWSTR filename, DWORD access, DWORD sharing, LPSECURITY_ATTRIBUTES sa, DWORD creation, DWORD attributes, HANDLE template ); | kernel32.dll | Cette fonction permet d'effectuer la création ou l'ouverture d'un fichier ou d'un périphérique avec des paramètres de chaine de caractères étendue (Unicode).
CreateFileMappingA | HANDLE CreateFileMappingA( HANDLE hFile, LPSECURITY_ATTRIBUTES lpFileMappingAttributes, DWORD flProtect, DWORD dwMaximumSizeHigh, DWORD dwMaximumSizeLow, LPCTSTR lpName ); | kernel32.dll | Cette fonction permet de créer un objet mapping, nommé ou non-nommé, pour un fichier spécifié.
CreateFileMappingW | HANDLE CreateFileMappingW( HANDLE hFile, LPSECURITY_ATTRIBUTES sa, DWORD protect, DWORD size_high, DWORD size_low, LPCWSTR name ); | kernel32.dll | Cette fonction permet de créer un objet mapping, nommé ou non-nommé, pour un fichier spécifié avec des paramètres de chaine de caractères étendue (Unicode).
CreateFontA | HFONT CreateFontA( int nHeight, int nWidth, int nEscapement, int nOrientation, int fnWeight, DWORD fdwItalic, DWORD fdwUnderline, DWORD fdwStrikeOut, DWORD fdwCharSet, DWORD fdwOutputPrecision, DWORD fdwClipPrecision, DWORD fdwQuality, DWORD fdwPitchAndFamily, LPCTSTR lpszFace ); | gdi32.dll | Cette fonction permet d'effectuer la création d'une police de caractères logique avec les caractéristiques spécifiés.
CreateFontIndirectA | HFONT CreateFontIndirectA(CONST LOGFONT *lplf); | gdi32.dll | Cette fonction permet de créer une police de caractères logique avec les caractéristiques spécifié dans la structure spécifié.
CreateFontIndirectW | HFONT CreateFontIndirectW(CONST LOGFONTW *lplf); | gdi32.dll | Cette fonction permet de créer une police de caractères logique avec les caractéristiques spécifié dans la structure spécifié avec les paramètres de chaines de caractères étendues (Unicode).
CreateFontW | HFONT CreateFontW( int nHeight, int nWidth, int nEscapement, int nOrientation, int fnWeight, DWORD fdwItalic, DWORD fdwUnderline, DWORD fdwStrikeOut, DWORD fdwCharSet, DWORD fdwOutputPrecision, DWORD fdwClipPrecision, DWORD fdwQuality, DWORD fdwPitchAndFamily, LPCWSTR lpszFace ); | gdi32.dll | Cette fonction permet d'effectuer la création d'une police de caractères logique avec les caractéristiques spécifiés avec les paramètres de chaines de caractères étendues (Unicode).
CreateHalftonePalette | HPALETTE CreateHalftonePalette(HDC hdc); | gdi32.dll | Cette fonction permet de créer une demi-teinte d'une palette pour le périphérique de contexte spécifié.
CreateHatchBrush | HBRUSH CreateHatchBrush(int fnStyle, COLORREF clrref); | gdi32.dll | Cette fonction permet de créer une brosse logique spécifiant un motif de hachure et de couleur.
CreateICA | HDC CreateICA( LPCTSTR lpszDriver, LPCTSTR lpszDevice, LPCTSTR lpszOutput, CONST DEVMODE * lpdvmInit ); | gdi32.dll | Cette fonction permet de créer une information de contexte pour un périphérique spécifié.
CreateICW | HDC CreateICW(LPCWSTR lpszDriver, LPCWSTR lpszDevice, LPCWSTR lpszOutput, CONST DEVMODEW * lpdvmInit); | gdi32.dll | Cette fonction permet de créer une information de contexte pour un périphérique spécifié avec des paramètres de chaines de caractères étendues (Unicode).
CreateIcon | HICON CreateIcon( HINSTANCE hInstance, int nWidth, int nHeight, BYTE cPlanes, BYTE cBitsPixel, CONST BYTE *lpbANDbits, CONST BYTE *lpbXORbits ); | user32.dll | Cette fonction permet d'effectuer la création d'une icône
CreateIconFromResource | HICON CreateIconFromResource(PBYTE presbits, DWORD dwResSize, BOOL fIcon, DWORD dwVer); | user32.dll | Cette fonction permet d'effectuer la création d'un icône ou d'un curseur à partir de bits de ressources décrit dans l'icône.
CreateIconFromResourceEx | HICON CreateIconFromResourceEx(PBYTE pbIconBits, DWORD cbIconBits, BOOL fIcon, DWORD dwVersion, int cxDesired, int cyDesired, UINT uFlags); | user32.dll | Cette fonction permet d'effectuer la création d'un icône ou d'un curseur à partir de bits de ressources décrit dans l'icône avec des options complémentaires.
CreateIconIndirect | HICON CreateIconIndirect(PICONINFO piconinfo); | user32.dll | Cette fonction permet d'effectuer la création d'un icône ou d'un curseur à partir d'une structure de données.
CreateMailslotA | HANDLE CreateMailslotA( LPCTSTR lpName, DWORD nMaxMessageSize, DWORD lReadTimeout, LPSECURITY_ATTRIBUTES lpSecurityAttributes ); | kernel32.dll | Cette fonction permet de créer une slot de courriel avec un nom spécifié et retourne un identificateur Handle associé à celle-ci.
CreateMailslotW | HANDLE CreateMailslotW( LPCWSTR lpName, DWORD nMaxMessageSize, DWORD lReadTimeout, LPSECURITY_ATTRIBUTES sa ); | kernel32.dll | Cette fonction permet de créer une slot de courriel avec un nom spécifié et retourne un identificateur Handle associé à celle-ci avec des paramètres de chaine de caractères étendue (Unicode).
CreateMDIWindowA | HWND CreateMDIWindowA(LPTSTR lpClassName, LPTSTR lpWindowName, DWORD dwStyle, int X, int Y, int nWidth, int nHeight, HWND hWndParent, HINSTANCE hInstance, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer la création de fenêtre enfant MDI (Interface de mutiple document).
CreateMDIWindowW | HWND CreateMDIWindowW(LPCWSTR lpClassName, LPCWSTR lpWindowName, DWORD dwStyle, int X, int Y, int nWidth, int nHeight, HWND hWndParent, HINSTANCE hInstance, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer la création de fenêtre enfant MDI (Interface de mutiple document) avec des paramètres de chaine de caractères étendues (Unicode).
CreateMenu | HMENU CreateMenu(VOID); | user32.dll | Cette fonction permet d'effectuer la création d'un menu.
CreateMetaFileA | HDC CreateMetaFileA(LPCTSTR lpszFile); | gdi32.dll | Cette fonction permet de créer un périphérique de contexte pour un format de fichier méta Windows.
CreateMetaFileW | HDC CreateMetaFileW(LPCWSTR filename); | gdi32.dll | Cette fonction permet de créer un périphérique de contexte pour un format de fichier méta Windows avec des paramètres de chaines de caractères étendues (Unicode).
CreateMutexA | HANDLE CreateMutexA( LPSECURITY_ATTRIBUTES lpMutexAttributes, BOOL bInitialOwner, LPCTSTR lpName ); | kernel32.dll | Cette fonction permet de créer un objet Mutex nommé ou non-nommé.
CreateMutexW | HANDLE CreateMutexW( LPSECURITY_ATTRIBUTES lpMutexAttributes, BOOL bInitialOwner, LPCWSTR lpName ); | kernel32.dll | Cette fonction permet de créer un objet Mutex nommé ou non-nommé avec des paramètres de chaine de caractères étendue (Unicode).
CreateNamedPipeA | HANDLE CreateNamedPipeA( LPCTSTR lpName, DWORD dwOpenMode, DWORD dwPipeMode, DWORD nMaxInstances, DWORD nOutBufferSize, DWORD nInBufferSize, DWORD nDefaultTimeOut, LPSECURITY_ATTRIBUTES lpSecurityAttributes ); | kernel32.dll | Cette fonction permet de créer un tuyau avec un instance de nom spécifié et de retourner un identificateur Handle associé à celle-ci.
CreateNamedPipeW | HANDLE CreateNamedPipeW( LPCWSTR lpName, DWORD dwOpenMode, DWORD nMaxInstances, DWORD nOutBufferSize, DWORD nInBufferSize, DWORD nDefaultTimeOut, DWORD nDefaultTimeOut, LPSECURITY_ATTRIBUTES lpSecurityAttributes ); | kernel32.dll | Cette fonction permet de créer un tuyau avec un instance de nom spécifié et de retourner un identificateur Handle associé à celle-ci avec des paramètres de chaine de caractères étendue (Unicode).
CreatePalette | HPALETTE CreatePalette(CONST LOGPALETTE *lplgpl); | gdi32.dll | Cette fonction permet d'effectuer la création d'une palette logique.
CreatePatternBrush | HBRUSH CreatePatternBrush(HBITMAP hbmp); | gdi32.dll | Cette fonction permet d'effectuer la création d'une brosse logique avec la palette Bitmap spécifié.
CreatePen | HPEN CreatePen(int fnPenStyle, int nWidth, COLORREF crColor); | gdi32.dll | Cette fonction permet d'effectuer la création d'un crayon logique avec le style, la largeur et la couleur spécifié.
CreatePenIndirect | HPEN CreatePenIndirect(CONST LOGPEN * lplgpn); | gdi32.dll | Cette fonction permet d'effectuer la création d'un crayon logique avec le style, la largeur et la couleur à l'aide la structure de données spécifié.
CreatePipe | BOOL CreatePipe( PHANDLE hReadPipe, PHANDLE hWritePipe, LPSECURITY_ATTRIBUTES lpPipeAttributes, DWORD nSize ); | kernel32.dll | Cette fonction permet de créer un tuyau anonyme et de retourner un identificateur Handle attribué en lecture et écriture pour celle-ci.
CreatePolyPolygonRgn | HRGN CreatePolyPolygonRgn(CONST POINT *lppt, CONST INT *lpPolyCounts, int nCount, int fnPolyFillMode); | gdi32.dll | Cette fonction permet d'effectuer la création d'une région contenant une série de fermeture de polygone.
CreatePolygonRgn | HRGN CreatePolygonRgn(CONST POINT *lppt, int cPoints, int fnPolyFillMode); | gdi32.dll | Cette fonction permet d'effectuer la création d'une région en forme de polygone.
CreatePopupMenu | HMENU CreatePopupMenu(VOID) | user32.dll | Cette fonction permet d'effectuer la création d'un menu contextuel
CreatePrivateObjectSecurity | BOOL CreatePrivateObjectSecurity( PSECURITY_DESCRIPTOR ParentDescriptor, PSECURITY_DESCRIPTOR CreatorDescriptor, PSECURITY_DESCRIPTOR * NewDescriptor, BOOL IsDirectoryObject, HANDLE Token, PGENERIC_MAPPING GenericMapping ); | advapi32.dll | Cette fonction permet d'alloué et d'initialiser un descripteur de sécurité relatif à l'objet pour un un serveur d'objet protégé.
CreateProcessA | BOOL CreateProcessA( LPCTSTR lpApplicationName, LPTSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, BOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCTSTR lpCurrentDirectory, LPSTARTUPINFO lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation ); | kernel32.dll | Cette fonction permet de créer un nouveau processus et de le fixer comme processus léger primaire.
CreateProcessW | BOOL CreateProcessW( LPCWSTR lpApplicationName, LPWSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, BOOL bInheritHandles, DWORD dwCreationFlags, PVOID lpEnvironment, LPCWSTR lpCurrentDirectory, LPSTARTUPINFOW lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation ); | kernel32.dll | Cette fonction permet de créer un nouveau processus et de le fixer comme processus léger primaire avec des paramètres de chaine de caractères étendue (Unicode).
CreateProcessAsUserA | BOOL CreateProcessAsUserA( HANDLE hToken LPCTSTR lpApplicationName, LPTSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, BOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCTSTR lpCurrentDirectory, LPSTARTUPINFO lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation ); | advapi32.dll | Cette fonction permet de créer un nouveau processus et de le mettre comme processus primaire.
CreateProcessAsUserW | BOOL CreateProcessAsUserW( HANDLE hToken LPCWSTR lpApplicationName, LPWSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, BOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPWSTR lpCurrentDirectory, LPSTARTUPINFO lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation ); | advapi32.dll | Cette fonction permet de créer un nouveau processus et de le mettre comme processus primaire avec des paramètres de chaine de caractères étendue (Unicode).
CreateRectRgn | HRGN CreateRectRgn(int nLeftRect, int nTopRect, int nRightRect, int nBottomRect); | gdi32.dll | Cette fonction permet d'effectuer la création d'une région rectangulaire.
CreateRectRgnIndirect | HRGN CreateRectRgnIndirect(CONST RECT *lprc); | gdi32.dll | Cette fonction permet d'effectuer la création d'une région rectangulaire à l'aide d'une structure de données.
CreateRemoteThread | HANDLE CreateRemoteThread( HANDLE hProcess, LPSECURITY_ATTRIBUTES lpThreadAttributes, DWORD dwStackSize, LPTHREAD_START_ROUTINE lpStartAddress, LPVOID lpParameter, DWORD dwCreationFlags, LPDWORD lpThreadId ); | kernel32.dll | Cette fonction permet de créer un processus léger exécuté dans l'espace d'une adresse d'un autre processus.
CreateRoundRectRgn | HRGN CreateRoundRectRgn(int nLeftRect, int nTopRect, int nRightRect, int nBottomRect, int nWidthEllipse, int nHeightEllipse); | gdi32.dll | Cette fonction permet d'effectuer la création d'une région rectangulaire avec les coins arrondies.
CreateScalableFontResourceA | BOOL CreateScalableFontResourceA(DWORD fdwHidden, LPCTSTR lpszFontRes, LPCTSTR lpszFontFile, LPCTSTR lpszCurrentPath); | gdi32.dll | Cette fonction permet de créer un fichier de ressource de police de caractères avec une police de caractères vectorielle.
CreateScalableFontResourceW | BOOL CreateScalableFontResourceW(DWORD fdwHidden, LPCWSTR lpszFontRes, LPCWSTR lpszFontFile, LPCWSTR lpszCurrentPath); | gdi32.dll | Cette fonction permet de créer un fichier de ressource de police de caractères avec une police de caractères vectorielle avec des paramètres de chaine de caractères étendue (Unicode).
CreateSemaphoreA | HANDLE CreateSemaphoreA( LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCTSTR lpName ); | kernel32.dll | Cette fonction permet de créer un objet de sémaphore nommé ou non-nommé.
CreateSemaphoreW | HANDLE CreateSemaphoreW( LPSECURITY_ATTRIBUTES lpSemaphoreAttributes, LONG lInitialCount, LONG lMaximumCount, LPCWSTR lpName ); | kernel32.dll | Cette fonction permet de créer un objet de sémaphore nommé ou non-nommé avec des paramètres de chaine de caractères étendue (Unicode).
CreateSolidBrush | HBRUSH CreateSolidBrush(COLORREF crColor); | gdi32.dll | Cette fonction permet d'effectuer la création d'une brosse logique avec la couleur et le motif solide spécifié.
CreateStatusWindowA | HWND CreateStatusWindowA( LONG style, LPCTSTR lpszText, HWND hwndParent, UINT wID ); | comctl32.dll | Cette fonction permet d'effectuer la création d'une barre d'état dans le bas d'une fenêtre d'application
CreateTapePartition | DWORD CreateTapePartition( HANDLE hDevice, DWORD dwPartitionMethod, DWORD dwCount, DWORD dwSize ); | kernel32.dll | Cette fonction permet de reformatté une unité de sauvegarde de bande magnétique (Tape Backup).
CreateToolhelp32Snapshot | HANDLE CreateToolhelp32Snapshot(DWORD dwFlags,DWORD th32ProcessID); | kernel32.dll | Cette fonction permet d'effectuer une capture de l'écran sous forme d'un Bitmap
CreateThread | HANDLE CreateThread( LPSECURITY_ATTRIBUTES lpThreadAttributes, DWORD dwStackSize, LPTHREAD_START_ROUTINE lpStartAddress, LPVOID lpParameter, DWORD dwCreationFlags, LPDWORD lpThreadId ); | kernel32.dll | Cette fonction permet de créer un processus pour exécuter un processus appelant dans un espace d'adressage.
CreateWaitableTimerA | HANDLE CreateWaitableTimerA( LPSECURITY_ATTRIBUTES lpTimerAttributes, BOOL bManualReset, LPCSTR lpTimerName ); | kernel32.dll | Cette fonction permet d'effectuer la création d'une horloge de délai d'attente.
CreateWaitableTimerW | HANDLE CreateWaitableTimerW( LPSECURITY_ATTRIBUTES lpTimerAttributes, BOOL bManualReset, LPCWSTR lpTimerName ); | kernel32.dll | Cette fonction permet d'effectuer la création d'une horloge de délai d'attente avec des paramètres de chaine de caractères étendue (Unicode).
CreateWindowExA | HWND CreateWindowExA( DWORD dwExStyle, LPCTSTR lpClassName, LPCTSTR lpWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam ); | user32.dll | Cette fonction permet d'effectuer la création d'une sous-fenêtre (PopUp).
CreateWindowExW | HWND CreateWindowExW(DWORD dwExStyle, LPCWSTR lpClassName, LPCWSTR lpWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, LPVOID lpParam); | user32.dll | Cette fonction permet d'effectuer la création d'une sous-fenêtre (PopUp) avec des paramètres de chaine de caractères étendues (Unicode).
CreateWindowStationA | HWINSTA CreateWindowStationA(LPTSTR lpwinsta, DWORD dwReserved, DWORD dwDesiredAccess, LPSECURITY_ATTRIBUTES lpsa); | user32.dll | Cette fonction permet d'effectuer la création d'un objet de fenêtre de station.
CreateWindowStationW | HWINSTA CreateWindowStationW(LPCWSTR lpwinsta, DWORD dwReserved, DWORD dwDesiredAccess, LPSECURITY_ATTRIBUTES lpsa); | user32.dll | Cette fonction permet d'effectuer la création d'un objet de fenêtre de station avec des paramètres de chaine de caractères étendues (Unicode).
DdeSetQualityOfService | BOOL DdeSetQualityOfService(HWND hwndClient, const SECURITY_QUALITY_OF_SERVICE *pqosNew, PSECURITY_QUALITY_OF_SERVICE pqosPrev); | user32.dll | Cette fonction permet de spécifier le service de qualité (QoS) des applications d'échanges de données dynamique brute (DDE) désiré pour de future initialisation de conversion DDE.
DebugActiveProcess | BOOL DebugActiveProcess( DWORD dwProcessId ); | kernel32.dll | Cette fonction permet d'allouer une débogueur à attaché avec un processus actif
DebugBreak | VOID DebugBreak(VOID); | kernel32.dll | Cette fonction permet de provoqué une exception sur un point d'arrêt dans le processus courant.
DefDlgProcA | LRESULT DefDlgProcA(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer le traitement de processus de fenêtre de message par défaut.
DefDlgProcW | LRESULT DefDlgProcW(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer le traitement de processus de fenêtre de message par défaut avec des paramètres de chaine de caractères étendues (Unicode).
DeferWindowPos | HDWP DeferWindowPos(HDWP hWinPosInfo, HWND hWnd, HWND hWndInsertAfter, int x, int y, int cx, int cy, UINT uFlags); | user32.dll | Cette fonction permet de mettre à jour la structure de positionnement d'une fenêtre.
DefFrameProcA | LRESULT DefFrameProcA(HWND hWnd, HWND hWndMDIClient, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer le processus de message par défaut du cadre d'une fenêtre MDI.
DefFrameProcW | LRESULT DefFrameProcW(HWND hWnd, HWND hWndMDIClient, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer le processus de message par défaut du cadre d'une fenêtre MDI avec des paramètres de chaine de caractères étendues (Unicode).
DefineDosDeviceA | BOOL DefineDosDeviceA( DWORD dwFlags, LPCTSTR lpDeviceName, LPCTSTR lpTargetPath ); | kernel32.dll | Cette fonction permet de définir, redéfinir ou supprimer un nom de périphérique DOS.
DefineDosDeviceW | BOOL DefineDosDeviceW( DWORD dwFlags, LPCWSTR lpDeviceName, LPCWSTR lpTargetPath ); | kernel32.dll | Cette fonction permet de définir, redéfinir ou supprimer un nom de périphérique DOS avec des paramètres de chaine de caractères étendue (Unicode).
DefMDIChildProcA | LRESULT DefMDIChildProcA(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet de définir le processus de message de la fenêtre enfant MDI.
DefMDIChildProcW | LRESULT DefMDIChildProcW(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet de définir le processus de message de la fenêtre enfant MDI avec des paramètres de chaine de caractères étendues (Unicode).
DefWindowProcA | LRESULT DefWindowProcA(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet de créer un événement produit par défaut lorsqu'une action est effectuer dans la fenêtre.
DefWindowProcW | LRESULT DefWindowProcW(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet de créer un événement produit par défaut lorsqu'une action est effectué dans la fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
DeleteAce | BOOL DeleteAce( PACL pAcl, DWORD dwAceIndex ); | advapi32.dll | Cette fonction permet d'effacer une entrée de contrôle d'accès (ACE) d'une liste de contrôle d'accès (ACL).
DeleteAtom | ATOM DeleteAtom( ATOM nAtom ); | kernel32.dll | Cette fonction permet de décrémenter le compteur de référence de chaine de caractères d'Atom local.
DeleteColorSpace | BOOL DeleteColorSpace(HCOLORSPACE hColorSpace); | gdi32.dll | Cette fonction permet de supprimer l'espace de couleur spécifié et libérer tous les ressources internes associé avec celui-ci.
DeleteCriticalSection | VOID DeleteCriticalSection( LPCRITICAL_SECTION lpCriticalSection ); | kernel32.dll | Cette fonction permet de terminer et restituer tous les ressources associé à l'objet de section critique.
DeleteDC | BOOL DeleteDC(HDC hdc); | gdi32.dll | Cette fonction permet d'effectuer la suppression d'un périphérique de contexte (DC).
DeleteEnhMetaFile | BOOL DeleteEnhMetaFile(HENHMETAFILE hemf); | gdi32.dll | Cette fonction permet de supprimer le format étendue du fichier méta ou le Handle du fichier méta de format étendue.
DeleteFiber | VOID DeleteFiber( LPVOID lpFiber ); | kernel32.dll | Cette fonction permet de supprimer une fibre existante.
DeleteFileA | BOOL DeleteFileA( LPCTSTR lpFileName ); | kernel32.dll | Cette fonction permet de supprimer un fichier existant.
DeleteFileW | BOOL DeleteFileW( LPCWSTR path ); | kernel32.dll | Cette fonction permet de supprimer un fichier existant avec des paramètres de chaine de caractères étendue (Unicode).
DeleteMenu | BOOL DeleteMenu(HMENU hMenu,UINT uPosition,UINT uFlags); | user32.dll | Cette fonction permet de supprimer un item de menu.
DeleteMetaFile | BOOL DeleteMetaFile(HMETAFILE hmf); | gdi32.dll | Cette fonction permet de supprimer un fichier de méta de format Windows ou le Handle d'un fichier méta de format Windows.
DeleteObject | BOOL DeleteObject(HGDIOBJ hObject); | gdi32.dll | Cette fonction permet de supprimer un crayon, une brosse, une police de caractères, un Bitmap ou une palette logique et d'ainsi libérer les ressources systèmes associé avec cette objet.
DeletePrinter | BOOL DeletePrinter(HANDLE hPrinter); | winspool.drv | Cette fonction permet de supprimer un objet d'imprimante.
DeregisterEventSource | BOOL DeregisterEventSource( HANDLE hEventLog ); | advapi32.dll | Cette fonction permet de fermer un identificateur Handle d'enregistrement d'événement retourner par une fonction «RegisterEventSource».
DescribePixelFormat | int DescribePixelFormat(HDC hdc, int iPixelFormat, UINT nBytes, LPPIXELFORMATDESCRIPTOR ppfd); | gdi32.dll | Cette fonction permet de demander les informations à propos du format d'un pixel spécifié d'un périphérique spécifié.
DestroyAcceleratorTable | BOOL DestroyAcceleratorTable(HACCEL hAccel); | user32.dll | Cette fonction permet de détruire la table d'accélérateur.
DestroyCaret | BOOL DestroyCaret(VOID); | user32.dll | Cette fonction permet de supprimer le caret courant.
DestroyCursor | BOOL DestroyCursor(HCURSOR hCursor); | user32.dll | Cette fonction permet de supprimer une image de pointeur de souris
DestroyIcon | BOOL DestroyIcon(HICON hIcon); | user32.dll | Cette fonction permet de supprimer une icône
DestroyMenu | BOOL DestroyMenu(HMENU hMenu); | user32.dll | Cette fonction permet de supprimer un menu contextuel
DestroyPrivateObjectSecurity | BOOL DestroyPrivateObjectSecurity( PSECURITY_DESCRIPTOR * ObjectDescriptor ); | advapi32.dll | Cette fonction permet d'effacer un descripteur de sécurité d'un objet serveur protégé.
DestroyWindow | BOOL DestroyWindow(HWND hWnd); | user32.dll | Cette fonction permet de supprimer une fenêtre
DeviceCapabilitiesExA | DWORD DeviceCapabilitiesA(LPCSTR pDriverName, LPCSTR pDeviceName, LPCSTR pPort, WORD iIndex, LPSTR pOutput, const DEVMODEA* DevMode); | gdi32.dll | Cette fonction permet de demander la compatibilité pour le pilote d'imprimante spécifié.
DeviceCapabilitiesExW | DWORD DeviceCapabilitiesExW(LPCWSTR pDriverName, LPCWSTR pDeviceName, LPCWSTR pPort, WORD iIndex, LPWSTR pOutput, CONST DEVMODEW* DevMode); | gdi32.dll | Cette fonction permet de demander la compatibilité pour le pilote d'imprimante spécifié avec des paramètres de chaine de caractères étendues (Unicode).
DeviceIoControl | BOOL DeviceIoControl( HANDLE hDevice, DWORD dwIoControlCode, LPVOID lpInBuffer, DWORD nInBufferSize, LPVOID lpOutBuffer, DWORD nOutBufferSize, LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped ); | kernel32.dll | Cette fonction permet d'envoyer des codes de contrôles directement à un pilote de périphérique.
DialogBoxIndirectParamA | int DialogBoxIndirectParamA(HINSTANCE hInstance, LPCDLGTEMPLATE hDialogTemplate, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam); | user32.dll | Cette fonction permet de créer une boite de dialogue modèle à l'aide d'un gabarit en mémoire et des paramètres spécifiés.
DialogBoxIndirectParamW | int DialogBoxIndirectParamW(HINSTANCE hInstance, LPCDLGTEMPLATE hDialogTemplate, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam); | user32.dll | Cette fonction permet de créer une boite de dialogue modèle à l'aide d'un gabarit en mémoire et des paramètres spécifiés avec des parmètres de chaine de caractères étendues (Unicode).
DialogBoxParamA | int DialogBoxParamA(HINSTANCE hInstance, LPCTSTR lpTemplateName, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam); | user32.dll | Cette fonction permet de créer une boite de dialogue modèle et des paramètres spécifiés.
DialogBoxParamW | int DialogBoxParamW(HINSTANCE hInstance, LPCWSTR lpTemplateName, HWND hWndParent, DLGPROC lpDialogFunc, LPARAM dwInitParam); | user32.dll | Cette fonction permet de créer une boite de dialogue modèle et des paramètres spécifiés avec des paramètres de chaine de caractères étendues (Unicode).
DisableThreadLibraryCalls | BOOL DisableThreadLibraryCalls( HMODULE hLibModule ); | kernel32.dll | Cette fonction permet de désactiver les avertissements «DLL_THREAD_ATTACH» et «DLL_THREAD_DETACH» des bibliothèques de lien dynamique (DLL) spécifié.
DisconnectNamedPipe | BOOL DisconnectNamedPipe( HANDLE hNamedPipe ); | kernel32.dll | Cette fonction permet de déconnecter le serveur de fin de tuyau nommé pour un processus client.
DiskCopyRunDll | int DiskCopyRunDll(IN LPSTR Unuse1,IN LPSTR Unuse2,IN LPSTR pszDriveNumber,IN LPSTR Unuse3); | diskcopy.dll | Cette fonction permet de lancer une boite de dialogue offrant la possibilité d'effectuer une copie d'unité de disquette
DispatchMessageA | LONG DispatchMessageA(CONST MSG * lpmsg); | user32.dll | Cette fonction permet de redistribuer le messages de fenêtre.
DispatchMessageW | LRESULT DispatchMessageW(const MSG* msg); | user32.dll | Cette fonction permet de redistribuer le messages de fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
DlgDirListA | int DlgDirListA(HWND hDlg, LPTSTR lpPathSpec, int nIDListBox, int nIDStaticPath, UINT uFileType); | user32.dll | Cette fonction permet de remplir une boite de dialogue avec une liste de fichiers et de répertoires.
DlgDirListW | int DlgDirListW(HWND hDlg, LPWSTR lpPathSpec, int nIDListBox, int nIDStaticPath, UINT uFileType); | user32.dll | Cette fonction permet de remplir une boite de dialogue avec une liste de fichiers et de répertoires avec des paramètres de chaine de caractères étendues (Unicode).
DlgDirListComboBoxA | int DlgDirListComboBoxA(HWND hDlg, LPTSTR lpPathSpec, int nIDComboBox, int nIDStaticPath, UINT uFiletype); | user32.dll | Cette fonction permet de remplir une boite combinée (Combo Box) avec une liste de fichiers et de répertoires.
DlgDirListComboBoxW | int DlgDirListComboBoxW(HWND hDlg, LPWSTR lpPathSpec, int nIDComboBox, int nIDStaticPath, UINT uFiletype); | user32.dll | Cette fonction permet de remplir une boite combinée (Combo Box) avec une liste de fichiers et de répertoires avec des paramètres de chaine de caractères étendues (Unicode).
DlgDirSelectComboBoxExA | BOOL DlgDirSelectComboBoxExA(HWND hDlg, LPTSTR lpString, int nCount, int nIDComboBox); | user32.dll | Cette fonction permet de demander la sélection courante d'une boite combinée remplit par la fonction DlgDirListComboBox.
DlgDirSelectComboBoxExW | BOOL DlgDirSelectComboBoxExW(HWND hDlg, LPWSTR lpString, int nCount, int nIDComboBox); | user32.dll | Cette fonction permet de demander la sélection courante d'une boite combinée remplit par la fonction DlgDirListComboBox avec des paramètres de chaine de caractères étendues (Unicode).
DlgDirSelectExA | BOOL DlgDirSelectExA(HWND hDlg, LPTSTR lpString, int nCount, int nIDListBox); | user32.dll | Cette fonction permet de demander la sélection courante étendue d'une liste de boite.
DlgDirSelectExW | BOOL DlgDirSelectExW(HWND hDlg, LPWSTR lpString, int nCount, int nIDListBox); | user32.dll | Cette fonction permet de demander la sélection courante étendue d'une liste de boite avec des paramètres de chaine de caractères étendues (Unicode).
DllGetVersion | HRESULT CALLBACK DllGetVersion(DLLVERSIONINFO *pdvi); | shell32.dll | Cette fonction permet de demander les informations de la version de DLL
DosDateTimeToFileTime | BOOL DosDateTimeToFileTime( WORD wFatDate, WORD wFatTime, LPFILETIME lpFileTime ); | kernel32.dll | Cette fonction permet de convertir la valeur d'une date et d'une heure du DOS en un temps fichier de 64 bits.
DPtoLP | BOOL DPtoLP(HDC hdc, LPPOINT lpPoints, int nCount); | gdi32.dll | Cette fonction permet d'effectuer la conversion des coordonnées d'un périphérique en coordonnées logique.
DragAcceptFiles | VOID DragAcceptFiles(HWND hWnd,BOOL fAccept); | shell32.dll | Cette fonction permet de fixer l'état du drapeau indiquant si la fenêtre accepte les fichiers glissées
DragDetect | BOOL DragDetect(HWND hwnd, POINT pt); | user32.dll | Cette fonction permet de déterminer quand une fonction de glisser-déposer (drag and drop) est mis en place.
DragObject | DWORD DragObject(HWND hWndScope, HWND hWndObj, UINT wObjType, DWORD hOfStruct, HCURSOR hDragCursor); | user32.dll | Cette fonction permet d'intéger une composante serveur de glisser-déposer (drag and drop).
DragFinish | VOID DragFinish(HDROP hDrop); | shell32.dll | Cette fonction permet de restituer la mémoire employé pour le transfert des noms de fichiers vers une fenêtre d'application
DragQueryFile | UINT DragQueryFile(HDROP hDrop,UINT iFile,LPTSTR lpszFile,UINT cch); | shell32.dll | Cette fonction permet de demander les noms de fichiers lors d'un transfert des noms de fichiers vers une fenêtre d'application
DrawAnimatedRects | BOOL DrawAnimatedRects(HWND hwnd, int idAni, CONST RECT * lprcFrom, CONST RECT * lprcTo); | user32.dll | Cette fonction permet de dessiner un cadre de rectangle et d'animer l'icône ouvert.
DrawCaption | void DrawCaption(HDC hdc, LPRECT lprc, HFONT hfont, HICON hicon, LPSTR lpszText, WORD wFlags); | user32.dll | Cette fonction permet de dessiner une fenêtre de légende.
DrawEdge | BOOL DrawEdge(HDC hdc, LPRECT qrc, UINT edge, UINT grfFlags); | user32.dll | Cette fonction permet de dessiner une ou plusieurs bordures d'un rectangle.
DrawEscape | int DrawEscape(HDC hdc, int nEscape, int cbInput, LPCSTR lpszInData); | gdi32.dll | Cette fonction permet d'accéder à la compatibilité de dessinage de l'affichage d'un vidéo n'étant pas directement disponible par le GDI (Graphics Device Interface).
DrawFocusRect | BOOL DrawFocusRect(HDC hDC, CONST RECT * lprc); | user32.dll | Cette fonction permet de dessiner un rectangle avec un style indiquant qu'il est focusé.
DrawFrameControl | BOOL DrawFrameControl(HDC hdc, LPRECT lprc, UINT uType, UINT uState); | user32.dll | Cette fonction permet de dessiner un cadre de contrôle pour le type et le style spécifié.
DrawIcon | BOOL DrawIcon(HDC hDC,int X,int Y,HICON hIcon); | user32.dll | Cette fonction permet d'afficher une icône dans la fenêtre d'application du contexte de l'objet
DrawIconEx | BOOL DrawIconEx(HDC hdc, int xLeft, int yTop, HICON hIcon, int cxWidth, int cyWidth, UINT istepIfAniCur, HBRUSH hbrFlickerFreeDraw, UINT diFlags); | user32.dll | Cette fonction permet d'afficher un icône ou un curseur dans une région client d'une fenêtre d'un périphérique de contexte donnée, d'effectuer des opérations de traitement de trame spécifié et d'étirement ou de compression de l'icône ou le curseur spécifié.
DrawMenuBar | BOOL DrawMenuBar(HWND hWnd); | user32.dll | Cette fonction permet de réafficher la barre de menu de la fenêtre d'application.
DrawStateA | BOOL DrawStateA(HDC hdc, HBRUSH hbr, DRAWSTATEPROC lpOutputFunc, LPARAM lData, WPARAM wData, int x, int y, int cx, int cy, UINT fuFlags); | user32.dll | Cette fonction permet d'afficher une image et d'appliquer un effet visuel indiquant son état, laquelle peut être désactiver ou un état par défaut.
DrawStateW | BOOL DrawStateW(HDC hdc, HBRUSH hbr, DRAWSTATEPROC lpOutputFunc, LPARAM lData, WPARAM wData, int x, int y, int cx, int cy, UINT fuFlags); | user32.dll | Cette fonction permet d'afficher une image et d'appliquer un effet visuel indiquant son état, laquelle peut être désactiver ou un état par défaut avec des paramètres de chaine de caractères étendues (Unicode).
DrawTextA | int DrawTextA(HDC hDC, LPCTSTR lpString, int nCount, LPRECT lpRect, UINT uFormat); | user32.dll | Cette fonction permet de dessiner le texte formatté dans le rectangle spécifié.
DrawTextW | int DrawTextW(HDC hDC, LPCWSTR lpString, int nCount, LPRECT lpRect, UINT uFormat); | user32.dll | Cette fonction permet de dessiner le texte formatté dans le rectangle spécifié avec des paramètres de chaine de caractères étendues (Unicode).
DrawTextExA | int DrawTextExA(HDC hdc, LPTSTR lpchText, int cchText, LPRECT lprc, UINT dwDTFormat, LPDRAWTEXTPARAMS lpDTParams); | user32.dll | Cette fonction permet de dessiner le texte formatté dans le rectangle spécifié avec des paramètres supplémentaires.
DrawTextExW | int DrawTextExW(HDC hdc, LPWSTR lpchText, int cchText, LPRECT lprc, UINT dwDTFormat, LPDRAWTEXTPARAMS lpDTParams); | user32.dll | Cette fonction permet de dessiner le texte formatté dans le rectangle spécifié avec des paramètres supplémentaires et des chaines de caractères étendues (Unicode).
DuplicateHandle | BOOL DuplicateHandle( HANDLE hSourceProcessHandle, HANDLE hSourceHandle, HANDLE hTargetProcessHandle, LPHANDLE lpTargetHandle, DWORD dwDesiredAccess, BOOL bInheritHandle, DWORD dwOptions ); | kernel32.dll | Cette fonction permet de dupliquer un objet d'identificateur Handle existant.
DuplicateIcon | HICON DuplicateIcon(HINSTANCE hInst,HICON hIcon); | shell32.dll | Cette fonction permet d'effectuer la création d'un nouvel icône identique à une autre icône spécifié.
DuplicateToken | BOOL DuplicateToken( HANDLE ExistingTokenHandle, SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, PHANDLE DuplicateTokenHandle ); | advapi32.dll | Cette fonction permet de créer un nouvel accès de jeton dupliqué sur un autre jeton déjà existant.
DuplicateTokenEx | BOOL DuplicateTokenEx( HANDLE hExistingToken, DWORD dwDesiredAccess, LPSECURITY_ATTRIBUTES lpTokenAttributes, SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, TOKEN_TYPE TokenType, PHANDLE phNewToken ); | advapi32.dll | Cette fonction permet d'effectuer la conversion d'un jeton spécifié par un jeton principal.
DvdLauncher | BOOL DvdLauncher(HWND HWnd,CHAR DriveLetter); | storprop.dll | Cette fonction permet de vérifier si la région que contient le DVD correspond avec celle du système d'exploitation.
Ellipse | BOOL Ellipse(HDC hdc,int nLeftRect,int nTopRect,int nRightRect,int nBottomRect); | gdi32.dll | Cette fonction permet d'effectuer l'afficher d'une ellipse (forme d'ovale).
EmptyClipboard | BOOL EmptyClipboard(VOID); | user32.dll | Cette fonction permet de vider complètement le tampon du presse-papier.
EnableMenuItem | BOOL EnableMenuItem(HMENU hMenu,UINT uIDEnableItem,UINT uEnable); | user32.dll | Cette fonction permet d'activer ou de désactiver un item de menu déroulant.
EnableScrollBar | BOOL EnableScrollBar(HWND hWnd,UINT wSBflags, UINT wArrows); | user32.dll | Cette fonction permet d'activer ou de désactiver les barres de défilement dans une fenêtre d'application.
EnableWindow | BOOL EnableWindow(HWND hWnd,BOOL bEnable); | user32.dll | Cette fonction permet d'activer ou de désactiver les événements clavier et souris et les contrôles dans une fenêtre d'application.
EndDeferWindowPos | BOOL EndDeferWindowPos(HDWP hWinPosInfo); | user32.dll | Cette fonction permet d'effectuer la simulation de mise-à-jour de position et de taille d'une ou plusieurs fenêtres dans un simple cycle de rafraichissement d'écran.
EndDialog | BOOL EndDialog(HWND hDlg, int nResult); | user32.dll | Cette fonction permet de cacher un modèle de boite de dialogue.
EndDoc | int EndDoc(HDC hdc); | gdi32.dll | Cette fonction permet d'indiquer que l'application a terminé d'envoyer des données au tampon d'impression de l'imprimante.
EndPage | int EndPage(HDC hdc); | gdi32.dll | Cette fonction permet d'indiquer que l'application a terminé d'envoyer une page de données au tampon d'impression de l'imprimante.
EndPaint | BOOL EndPaint(HWND hWnd, CONST PAINTSTRUCT *lpPaint); | user32.dll | Cette fonction permet de marquer la fin du traitement de peinture d'une fenêtre spécifié.
EndPath | BOOL EndPath(HDC hdc); | gdi32.dll | Cette fonction permet de fermer une braquette de chemin et sélectionne le chemin définit par la braquette dans le périphérique de contexte (DC) spécifié.
EndUpdateResourceA | BOOL EndUpdateResourceA( HANDLE hUpdate, BOOL fDiscard ); | kernel32.dll | Cette fonction permet de terminer la mise-à-jour d'une ressource d'un fichier exécutable.
EndUpdateResourceW | BOOL EndUpdateResourceW(HANDLE hUpdate,BOOL fDiscard); | kernel32.dll | Cette fonction permet de terminer la mise-à-jour d'une ressource d'un fichier exécutable avec des paramètres de chaine de caractères étendue (Unicode).
EnterCriticalSection | VOID EnterCriticalSection( LPCRITICAL_SECTION lpCriticalSection ); | kernel32.dll | Cette fonction permet d'attendre après un propriétaire d'objet de section critique spécifié.
EnumCalendarInfoA | BOOL EnumCalendarInfoA( CALINFO_ENUMPROC lpCalInfoEnumProc, LCID Locale, CALID Calendar, CALTYPE CalType ); | kernel32.dll | Cette fonction permet d'énumérer des informations de calendrier d'une région local spécifié
EnumCalendarInfoW | BOOL EnumCalendarInfoW( CALINFO_ENUMPROCW calinfoproc, LCID locale, CALID calendar, CALTYPE caltype ); | kernel32.dll | Cette fonction permet d'énumérer des informations de calendrier d'une région local spécifié avec des paramètres de chaine de caractères étendue (Unicode).
EnumChildWindows | BOOL EnumChildWindows(HWND hWndParent, WNDENUMPROC lpEnumFunc, LPARAM lParam); | user32.dll | Cette fonction permet d'énumérer les fenêtres enfants de la fenêtre parent en passant le Handle de chaque fenêtre enfant avec une fonction d'application utilisateur.
EnumClipboardFormats | UINT EnumClipboardFormats(UINT format); | user32.dll | Cette fonction permet de retourner les formats de presse-papier disponibles.
EnumDateFormatsA | BOOL EnumDateFormatsA( DATEFMT_ENUMPROC lpDateFmtEnumProc, LCID Locale, DWORD dwFlags ); | kernel32.dll | Cette fonction permet d'énumérer le format de la date courte ou longue disponible pour la région locale.
EnumDateFormatsW | BOOL EnumDateFormatsW( DATEFMT_ENUMPROCW lpDateFmtEnumProc, LCID Locale, DWORD dwFlags); | kernel32.dll | Cette fonction permet d'énumérer le format de la date courte ou longue disponible pour la région locale avec des paramètres de chaine de caractères étendue (Unicode).
EnumDesktopsA | BOOL EnumDesktopsA(HWINSTA hwinsta, DESKTOPENUMPROC lpEnumFunc, LPARAM lParam); | user32.dll | Cette fonction permet de demander l'énumération de tous les bureaux d'une fenêtre de travail associé avec un processus appelant.
EnumDesktopsW | BOOL EnumDesktopsW(HWINSTA hwinsta, DESKTOPENUMPROCW lpEnumFunc, LPARAM lParam); | user32.dll | Cette fonction permet de demander l'énumération de tous les bureaux d'une fenêtre de travail associé avec un processus appelant avec des paramètres de chaine de caractères étendues (Unicode).
EnumDesktopWindows | BOOL EnumDesktopWindows(HDESK hDesktop, WNDENUMPROC lpfn, LPARAM lParam); | user32.dll | Cette fonction permet de demander l'énumération de tous les bureaux passé par le Handle de chaque fenêtre, par l'entremise d'une fonction utilisateur.
EnumDisplaySettingsA | BOOL EnumDisplaySettingsA(LPCTSTR lpszDeviceName,DWORD iModeNum,LPDEVMODE lpDevMode); | user32.dll | Cette fonction permet de demander des informations sur le système d'affichage.
EnumDisplaySettingsW | BOOL EnumDisplaySettingsW(LPCWSTR lpszDeviceName, DWORD iModeNum, PDEVMODEW lpDevMode); | user32.dll | Cette fonction permet de demander des informations sur le système d'affichage avec des paramètres de chaine de caractères étendues (Unicode).
EnumEnhMetaFile | BOOL EnumEnhMetaFile(HDC hdc, HENHMETAFILE hemf, ENHMFENUMPROC lpEnhMetaFunc, LPVOID lpData, CONST RECT * lpRect); | gdi32.dll | Cette fonction permet d'énumérer les enregistrements d'un format étendue d'un méta fichier afin de demander chaques enregistrements et de les passés par une fonction utilisateur.
EnumFontFamiliesA | int EnumFontFamiliesA(HDC hdc, LPCTSTR lpszFamily, FONTENUMPROC lpEnumFontFamProc, LPARAM lParam); | gdi32.dll | Cette fonction permet d'énumérer les polices de caractères d'une famille de police de caractères spécifié étant disponible pour un périphérique spécifié.
EnumFontFamiliesW | int EnumFontFamiliesW(HDC hdc, PLOGFONTW lpszFamily, FONTENUMPROCW lpEnumFontFamProc, LPARAM lParam); | gdi32.dll | Cette fonction permet d'énumérer les polices de caractères d'une famille de police de caractères spécifié étant disponible pour un périphérique spécifié avec des paramètres de chaine de caractères étendues (Unicode).
EnumFontFamiliesExA | int EnumFontFamiliesExA(HDC hdc, LPLOGFONT lpLogfont, FONTENUMPROC lpEnumFontFamExProc, LPARAM lParam, DWORD dwFlags); | gdi32.dll | Cette fonction permet d'énumérer toutes les polices de caractères système correspondant aux caractéristiques de polices de caractères spécifié par une structure.
EnumFontFamiliesExW | int EnumFontFamiliesExW(HDC hdc, LPLOGFONTW lpLogfont, FONTENUMPROCW lpEnumFontFamExProc, LPARAM lParam, DWORD dwFlags); | gdi32.dll | Cette fonction permet d'énumérer toutes les polices de caractères système correspondant aux caractéristiques de polices de caractères spécifié par une structure avec des paramètres de chaine de caractères étendues (Unicode).
EnumFontsA | int EnumFontsA(HDC hdc, LPCTSTR lpFaceName, FONTENUMPROC lpFontFunc, LPARAM lParam); | gdi32.dll | Cette fonction permet d'énumérer les polices de caractères disponibles pour le périphérique spécifié.
EnumFontsW | int EnumFontsW(HDC hDC, LPCWSTR lpFaceName, FONTENUMPROCW FontFunc, LPARAM lParam); | gdi32.dll | Cette fonction permet d'énumérer les polices de caractères disponibles pour le périphérique spécifié avec des paramètres de chaine de caractères étendues (Unicode).
EnumICMProfilesA | int EnumICMProfilesA(HDC hdc, ICMENUMPROC lpICMEnumFunc, LPARAM lParam); | gdi32.dll | Cette fonction permet d'énumérer les différents profiles de couleurs étant supporté par le système pour le périphérique de contexte spécifié.
EnumICMProfilesW | int EnumICMProfilesW(HDC hDC, ICMENUMPROCW lpEnumICMProfilesFunc, LPARAM lParam); | gdi32.dll | Cette fonction permet d'énumérer les différents profiles de couleurs étant supporté par le système pour le périphérique de contexte spécifié avec des paramètres de chaine de caractères étendues (Unicode).
EnumJobsA | BOOL EnumJobsA( HANDLE hPrinter, DWORD FirstJob, DWORD NoJobs, DWORD Level, LPBYTE pJob, DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned ); | winspool.drv | Cette fonction permet de définir les travaux d'impressions d'une imprimante.
EnumMetaFile | BOOL EnumMetaFile(HDC hdc, HMETAFILE hmf, MFENUMPROC lpMetaFunc, LPARAM lParam); | gdi32.dll | Cette fonction permet de demander d'énumérer les enregistrements de fichier méta de format Windows en utilisant une fonction d'application utilisateur.
EnumObjects | int EnumObjects(HDC hdc, int nObjectType, GOBJENUMPROC lpObjectFunc, LPARAM lParam); | gdi32.dll | Cette fonction permet d'énumérer les crayons et les brosses disponibles pour le périphérique de contexte spécifié.
EnumPortsA | BOOL EnumPortsA( LPTSTR pName, DWORD Level, LPBYTE pPorts, DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned ); | winspool.drv | Cette fonction permet de demander les ports d'impressions d'imprimante disponible.
EnumPrintersA | BOOL EnumPrintersA( DWORD Flags, LPTSTR Name, DWORD Level, LPBYTE pPrinterEnum, DWORD cbBuf, LPDWORD pcbNeeded, LPDWORD pcReturned ); | winspool.drv | Cette fonction permet de demander des informations sur une imprimante.
EnumPropsA | int EnumPropsA(HWND hWnd, PROPENUMPROC lpEnumFunc); | user32.dll | Cette fonction permet d'effectuer le passage de la liste des entrées de propriétés par l'intermédiaire d'une fonction utilisateur.
EnumPropsExA | int EnumPropsExA(HWND hWnd, PROPENUMPROCEX lpEnumFunc, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer le passage de la liste des entrées de propriétés par l'intermédiaire d'une fonction utilisateur avec des paramètres supplémentaires.
EnumPropsExW | int EnumPropsExW(HWND hWnd, PROPENUMPROCEXW lpEnumFunc, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer le passage de la liste des entrées de propriétés par l'intermédiaire d'une fonction utilisateur avec des paramètres supplémentaires et des chaines de caractères étendues (Unicode).
EnumPropsW | int EnumPropsW(HWND hWnd, PROPENUMPROCW lpEnumFunc); | user32.dll | Cette fonction permet d'effectuer le passage de la liste des entrées de propriétés par l'intermédiaire d'une fonction utilisateur avec des paramètres de chaine de caractères étendues (Unicode).
EnumResourceLanguagesA | BOOL EnumResourceLanguagesA( HMODULE hModule, LPCTSTR lpType, LPCTSTR lpName, ENUMRESLANGPROC lpEnumFunc, LONG lParam ); | kernel32.dll | Cette fonction permet de rechercher un module pour chaque ressource d'un type spécifié et de passé le langage pour chaque ressource trouvé dans une fonction définie en arrière plan.
EnumResourceLanguagesW | BOOL EnumResourceLanguagesW( HMODULE hModule, LPCWSTR lpType, LPCWSTR lpName, ENUMRESLANGPROC lpEnumFunc, LONG_PTR lParam ); | kernel32.dll | Cette fonction permet de rechercher un module pour chaque ressource d'un type spécifié et de passé le langage pour chaque ressource trouvé dans une fonction définie en arrière plan avec des paramètres de chaine de caractères étendue (Unicode).
EnumResourceNamesA | BOOL EnumResourceNamesA( HINSTANCE hModule, LPCTSTR lpszType, ENUMRESNAMEPROC lpEnumFunc, LONG lParam ); | kernel32.dll | Cette fonction permet de rechercher un module pour chaque ressource d'un type spécifié et de passé le langage pour chaque ressource trouvé dans une fonction d'application définie en arrière plan.
EnumResourceNamesW | BOOL EnumResourceNamesW( HMODULE hModule, LPCWSTR lpszType, ENUMRESNAMEPROC lpEnumFunc, LONG_PTR lParam ); | kernel32.dll | Cette fonction permet de rechercher un module pour chaque ressource d'un type spécifié et de passé le langage pour chaque ressource trouvé dans une fonction d'application définie en arrière plan avec des paramètres de chaine de caractères étendue (Unicode).
EnumResourceTypesA | BOOL EnumResourceTypesA( HMODULE hModule, ENUMRESTYPEPROC lpEnumFunc, LONG lParam ); | kernel32.dll | Cette fonction permet de rechercher un module pour une ressource et de passé chaque type de ressource dans une fonction d'application définie en arrière plan.
EnumResourceTypesW | BOOL EnumResourceTypesW( HMODULE hModule, ENUMRESTYPEPROC lpEnumFunc, , LONG_PTR lParam ); | kernel32.dll | Cette fonction permet de rechercher un module pour une ressource et de passé chaque type de ressource dans une fonction d'application définie en arrière plan avec des paramètres de chaine de caractères étendue (Unicode).
EnumSystemCodePagesA | BOOL EnumSystemCodePagesA( CODEPAGE_ENUMPROC lpCodePageEnumProc, DWORD dwFlags ); | kernel32.dll | Cette fonction permet d'énumérer un code de page installé ou supporté par le système d'exploitation.
EnumSystemCodePagesW | BOOL EnumSystemCodePagesW( CODEPAGE_ENUMPROCW lpfnCodePageEnum, DWORD flags ); | kernel32.dll | Cette fonction permet d'énumérer un code de page installé ou supporté par le système d'exploitation avec des paramètres de chaine de caractères étendue (Unicode).
EnumSystemLocalesA | BOOL EnumSystemLocalesA( LOCALE_ENUMPROC lpLocaleEnumProc, DWORD dwFlags ); | kernel32.dll | Cette fonction permet d'énumérer la région locale installé ou supporté par le système d'exploitation.
EnumSystemLocalesW | BOOL EnumSystemLocalesW( LOCALE_ENUMPROCW lpfnLocaleEnum, DWORD dwFlags ); | kernel32.dll | Cette fonction permet d'énumérer la région locale installé ou supporté par le système d'exploitation avec des paramètres de chaine de caractères étendue (Unicode).
EnumTimeFormatsA | BOOL EnumTimeFormatsA( TIMEFMT_ENUMPROC lpTimeFmtEnumProc, LCID Locale, DWORD dwFlags ); | kernel32.dll | Cette fonction permet d'énumérer le format de temps disponible pour la région locale.
EnumTimeFormatsW | BOOL EnumTimeFormatsW( TIMEFMT_ENUMPROCW lpTimeFmtEnumProc, LCID Locale, DWORD dwFlags ); | kernel32.dll | Cette fonction permet d'énumérer le format de temps disponible pour la région locale avec des paramètres de chaine de caractères étendue (Unicode).
EnumThreadWindows | BOOL EnumThreadWindows(DWORD dwThreadId, WNDENUMPROC lpfn, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer l'énumération de toutes les fenêtres non-enfant associé avec un processus par passage d'un Handle pour chaque fenêtre avec une fonction d'application utilisateur.
EnumWindows | BOOL EnumWindows(WNDENUMPROC lpEnumFunc, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer le passage des fenêtres parent par l'intermédiaire d'une fonction utilisateur.
EnumWindowStationsA | BOOL EnumWindowStationsA(WINSTAENUMPROC lpEnumFunc, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer l'énumération de toutes les fenêtres de station dans le système par passage du nom pour chaque fenêtre de station avec une fonction d'application utilisateur.
EnumWindowStationsW | BOOL EnumWindowStationsW(WINSTAENUMPROCW EnumFunc, LPARAM Context); | user32.dll | Cette fonction permet d'effectuer l'énumération de toutes les fenêtres de station dans le système par passage du nom pour chaque fenêtre de station avec une fonction d'application utilisateur et des paramètres de chaine de caractères étendues (Unicode).
EqualPrefixSid | BOOL EqualPrefixSid( PSID pSid1, PSID pSid2 ); | advapi32.dll | Cette fonction permet de vérifie sur les valeurs de deux préfixes SID (identificateur de sécurité) sont égales à l'exception de la dernière valeur de sous-autorité.
EqualRect | BOOL EqualRect(CONST RECT *lprc1, CONST RECT *lprc2); | user32.dll | Cette fonction permet de demander lequel des deux rectangles spécifiés sont égales par comparaison des coordonnées de leur coin supérieur gauche et de leur coin inférieur droit.
EqualRgn | BOOL EqualRgn(HRGN hSrcRgn1, HRGN hSrcRgn2); | gdi32.dll | Cette fonction permet de demander lequel des deux régions spécifiés sont égales par comparaison des coordonnées de leur coin supérieur gauche et de leur coin inférieur droit.
EqualSid | BOOL EqualSid( PSID pSid1, PSID pSid2 ); | advapi32.dll | Cette fonction permet de vérifie sur les valeurs de deux préfixes SID (identificateur de sécurité) sont égales.
EraseTape | DWORD EraseTape( HANDLE hDevice, DWORD dwEraseType, BOOL bImmediate ); | kernel32.dll | Cette fonction permet de tout supprimer ou supprimer des parties de bande magnétique de sauvegarde.
Escape | int Escape(HDC hdc, int nEscape, int cbInput, LPCSTR lpvInData, LPVOID lpvOutData); | gdi32.dll | Cette fonction permet d'activer les applications de compatibilité d'accès d'un périphérique particulier non accessible directement par le GDI.
EscapeCommFunction | BOOL EscapeCommFunction( HANDLE hFile, DWORD dwFunc ); | kernel32.dll | Cette fonction permet d'effectuer directement une communication d'un périphérique spécifié à une fonction étendue.
ExcludeClipRect | int ExcludeClipRect(HDC hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect); | gdi32.dll | Cette fonction permet de créer une nouvelle région de Clip consistant en une minuscule région existante du rectangle spécifié.
ExcludeUpdateRgn | int ExcludeUpdateRgn(HDC hDC, HWND hWnd); | user32.dll | Cette fonction permet d'exclure la région mise-à-jour d'une région de capture.
ExitProcess | VOID ExitProcess( UINT uExitCode ); | kernel32.dll | Cette fonction permet de terminer un processus et tous ses processus légers.
ExitThread | VOID ExitThread( DWORD dwExitCode ); | kernel32.dll | Cette fonction permet de terminer un processus léger.
ExitWindowsEx | BOOL ExitWindowsEx(UINT uFlags,DWORD dwReserved); | user32.dll | Cette fonction permet d'effectuer l'arrêt ou le redémarrage de Windows et/ou de l'ordinateur.
ExpandEnvironmentStringsA | DWORD ExpandEnvironmentStringsA( LPCTSTR lpSrc, LPTSTR lpDst, DWORD nSize ); | kernel32.dll | Cette fonction permet d'étendre une chaine de caractères de variable d'environnement et de remplacer leurs valeurs par celle correspondante.
ExpandEnvironmentStringsW | DWORD ExpandEnvironmentStringsW( LPCWSTR src, LPWSTR dst, DWORD len ); | kernel32.dll | Cette fonction permet d'étendre une chaine de caractères de variable d'environnement et de remplacer leurs valeurs par celle correspondante avec des paramètres de chaine de caractères étendue (Unicode).
ExtCreatePen | HPEN ExtCreatePen(DWORD dwPenStyle, DWORD dwWidth, CONST LOGBRUSH * lplb, DWORD dwStyleCount, CONST DWORD * lpStyle); | gdi32.dll | Cette focntion permet de créer un crayon cosmétique ou géométrique logique ayant les attributs de style, de largeur et brosses spécifiés.
ExtCreateRegion | HRGN ExtCreateRegion(CONST XFORM * lpXform, DWORD nCount, CONST RGNDATA * lpRgnData); | gdi32.dll | Cette fonction permet de créer une région avec la région et la transformation de données spécifié.
ExtEscape | int ExtEscape(HDC hdc, int nEscape, int cbInput, LPCSTR lpszInData, int cbOutput, LPSTR lpszOutData); | gdi32.dll | Cette fonction permet d'allouer les applications vers une capacité d'accès d'un périphérique particulier n'étant pas disponible pour le GDI.
ExtFloodFill | BOOL ExtFloodFill(HDC hdc, int nXStart, int nYStart, COLORREF crColor, UINT fuFillType); | gdi32.dll | Cette fonction permet de remplir une région d'une surface d'affichage avec la brosse courante.
ExtractAssociatedIconA | HICON ExtractAssociatedIconA( HINSTANCE hInst, LPTSTR lpIconPath, LPWORD lpiIcon ); | shell32.dll | Cette fonction permet de demander le Handle dans icône indexé dans un fichier.
ExtractIconA | HICON ExtractIconA(HINSTANCE hInst,LPCTSTR lpszExeFileName,UINT nIconIndex); | shell32.dll | Cette fonction permet de demander une unique icône dans un fichier.
ExtractIconExA | UINT ExtractIconExA(LPCTSTR lpszFile,int nIconIndex,HICON *phiconLarge,HICON *phiconSmall,UINT nIcons); | shell32.dll | Cette fonction permet de demander plusieurs icônes dans un fichier.
ExtSelectClipRgn | int ExtSelectClipRgn(HDC hdc, HRGN hrgn, int fnMode); | gdi32.dll | Cette fonction permet de combiner la région spécifié avec la région de capture courante en utilisant le mode spécifié.
ExtTextOutA | BOOL ExtTextOutA(HDC hdc, int X, int Y, UINT fuOptions, CONST RECT *lprc, LPCTSTR lpString, UINT cbCount, CONST INT * lpDx ); | gdi32.dll | Cette fonction permet de dessiner une chaine de caractères en utilisant la police de caractères courante.
ExtTextOutW | BOOL ExtTextOutW(HDC hdc, INT x, INT y, UINT flags, const RECT* lprect, LPCWSTR str, UINT count, const INT* lpDx); | gdi32.dll | Cette fonction permet de dessiner une chaine de caractères en utilisant la police de caractères courante avec des paramètres de chaines de caractères étendues (Unicode).
FatalAppExitA | VOID FatalAppExitA(UINT uAction,LPCTSTR lpMessageText); | kernel32.dll | Cette fonction permet d'afficher la boite de dialogue d'erreur fatal amenant la terminaison anormale du programme.
FatalAppExitW | void FatalAppExitW( UINT uAction, LPCWSTR lpMessageText ); | kernel32.dll | Cette fonction permet d'afficher la boite de dialogue d'erreur fatal amenant la terminaison anormale du programme avec des paramètres de chaine de caractères étendue (Unicode).
FatalExit | VOID FatalExit( int ExitCode ); | kernel32.dll | Cette fonction permet de transférer le contrôle d'exécution au débogueur.
FileTimeToDosDateTime | BOOL FileTimeToDosDateTime( CONST FILETIME * lpFileTime, LPWORD lpFatDate, LPWORD lpFatTime ); | kernel32.dll | Cette fonction permet de convertir un temps de fichier 64 bits en des valeurs de date et temps.
FileTimeToLocalFileTime | BOOL FileTimeToLocalFileTime( CONST FILETIME * lpFileTime, LPFILETIME lpLocalFileTime ); | kernel32.dll | Cette fonction permet d'effectuer la conversion du temps d'un fichier de format UTC (Coordonnée de Temps Universelle) en format de temps local.
FileTimeToSystemTime | BOOL FileTimeToSystemTime( CONST FILETIME * lpFileTime, LPSYSTEMTIME lpSystemTime ); | kernel32.dll | Cette fonction permet de convertir un temps fichier de 64 bits à un temps de format système.
FillConsoleOutputAttribute | BOOL FillConsoleOutputAttribute( HANDLE hConsoleOutput, WORD wAttribute, DWORD nLength, COORD dwWriteCoord, LPDWORD lpNumberOfAttrsWritten ); | kernel32.dll | Cette fonction permet de fixer la couleur de texte et d'arrière plan pour un nombre spécifié de caractères en commençant au coordonnées du tampon d'écran spécifié.
FillConsoleOutputCharacterA | BOOL FillConsoleOutputCharacterA( HANDLE hConsoleOutput, TCHAR cCharacter, DWORD nLength, COORD dwWriteCoord, LPDWORD lpNumberOfCharsWritten ); | kernel32.dll | Cette fonction permet d'écrire un caractère dans le tampon d'écran un certain nombre de fois en commençant au coordonnées du tampon d'écran spécifié.
FillConsoleOutputCharacterW | BOOL FillConsoleOutputCharacterW( HANDLE hConsoleOutput, WCHAR ch, DWORD length, COORD coord, LPDWORD lpNumCharsWritten ); | kernel32.dll | Cette fonction permet d'écrire un caractère dans le tampon d'écran un certain nombre de fois en commençant au coordonnées du tampon d'écran spécifié avec des paramètres de chaine de caractères étendue (Unicode).
FillPath | BOOL FillPath(HDC hdc); | gdi32.dll | Cette fonction permet de fermer n'importe quel figures ouvertes dans le chemin courant et remplis l'intérieur du chemin en utilisant la brosses courante et le mode de remplissage de polygone.
FillRect | int FillRect(HDC hDC, CONST RECT *lprc, HBRUSH hbr); | user32.dll | Cette fonction permet de remplir un rectangle avec la brosse spécifié.
FillRgn | BOOL FillRgn(HDC hdc, HRGN hrgn, HBRUSH hbr); | gdi32.dll | Cette fonction permet de remplir la région avec le brosse spécifié.
FindAtomA | ATOM FindAtomA( LPCTSTR lpString ); | kernel32.dll | Cette fonction permet de rechercher dans un table d'Atom local la chaine de caractères spécifié et demande l'Atom associé avec cette chaine de caractères.
FindAtomW | ATOM FindAtomW( LPCWSTR str ); | kernel32.dll | Cette fonction permet de rechercher dans un table d'Atom local la chaine de caractères spécifié et demande l'Atom associé avec cette chaine de caractères avec des paramètres de chaine de caractères étendue (Unicode).
FindClose | BOOL FindClose(HANDLE hFindFile); | kernel32.dll | Cette fonction permet d'indiquer que la recherche des fichiers et répertoires que contient un répertoire est terminé.
FindCloseChangeNotification | BOOL FindCloseChangeNotification(HANDLE hChangeHandle); | kernel32.dll | Cette fonction permet d'indiquer que la recherche et modifications des fichiers et répertoires que contient un répertoire est terminé.
FindExecutableA | HINSTANCE FindExecutableA(LPCTSTR lpFile,LPCTSTR lpDirectory,LPTSTR lpResult); | shell32.dll | Cette fonction permet de demander le fichier devant être exécuté lorsque la sorte d'extension de fichier est rencontré.
FindFirstChangeNotificationA | HANDLE FindFirstChangeNotificationA( LPCTSTR lpPathName, BOOL bWatchSubtree, DWORD dwNotifyFilter ); | kernel32.dll | Cette fonction permet de créer un identificateur Handle d'avertissement de changement et fixe la condition d'avertissement de changement initial.
FindFirstChangeNotificationW | HANDLE FindFirstChangeNotificationW(LPCWSTR lpPathName, BOOL bWatchSubtree, DWORD dwNotifyFilter); | kernel32.dll | Cette fonction permet de créer un identificateur Handle d'avertissement de changement et fixe la condition d'avertissement de changement initial avec des paramètres de chaine de caractères étendue (Unicode).
FindFirstChangeNotification | HANDLE FindFirstChangeNotification( LPCTSTR lpPathName, BOOL bWatchSubtree, DWORD dwNotifyFilter ); | kernel32.dll | Cette fonction permet de spécifier une recherche et modifications des fichiers et répertoires que contient un répertoire.
FindFirstFileA | HANDLE FindFirstFileA(LPCTSTR lpFileName,LPWIN32_FIND_DATA lpFindFileData); | kernel32.dll | Cette fonction permet de spécifier une recherche des fichiers et répertoires que contient un répertoire.
FindFirstFileExA | HANDLE FindFirstFileExA( LPCSTR lpFileName, FINDEX_INFO_LEVELS fInfoLevelId, PVOID lpFindFileData, FINDEX_SEARCH_OPS fSearchOp, PVOID lpSearchFilter, DWORD dwAdditionalFlags ); | kernel32.dll | Cette fonction permet de rechercher dans un répertoire un fichier ou un sous-répertoire avec une correspondance de nom et d'attribut spécifié.
FindFirstFileExW | HANDLE FindFirstFileExW( LPCWSTR lpFileName, FINDEX_INFO_LEVELS fInfoLevelId, PVOID lpFindFileData, FINDEX_SEARCH_OPS fSearchOp, PVOID lpSearchFilter, DWORD dwAdditionalFlags ); | kernel32.dll | Cette fonction permet de rechercher dans un répertoire un fichier ou un sous-répertoire avec une correspondance de nom et d'attribut spécifié avec des paramètres de chaine de caractères étendue (Unicode).
FindFirstFileW | HANDLE FindFirstFileW( LPCWSTR lpFileName, LPWIN32_FIND_DATAW lpFindFileData ); | kernel32.dll | Cette fonction permet de spécifier une recherche des fichiers et répertoires que contient un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
FindFirstFreeAce | BOOL FindFirstFreeAce( PACL pAcl, LPVOID *pAce ); | advapi32.dll | Cette fonction permet de retourner un pointeur sur le premier octet de libre sur une liste de contrôle d'accès (ACL).
FindNextChangeNotification | BOOL FindNextChangeNotification(HANDLE hChangeHandle); | kernel32.dll | Cette fonction permet demander l'entrée suivant lors de la recherche et modifications des fichiers et répertoire que contient un répertoire.
FindNextFileA | BOOL FindNextFileA(HANDLE hFindFile,LPWIN32_FIND_DATA lpFindFileData); | kernel32.dll | Cette fonction permet demander l'entrée suivante lors de la recherche des fichiers et répertoire que contient un répertoire.
FindNextFileW | BOOL FindNextFileW( HANDLE hFindFile, LPWIN32_FIND_DATAW lpFindFileData ); | kernel32.dll | Cette fonction permet demander l'entrée suivante lors de la recherche des fichiers et répertoire que contient un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
FindResourceA | HRSRC FindResourceA( HMODULE hModule, LPCTSTR lpName, LPCTSTR lpType ); | kernel32.dll | Cette fonction permet de demander l'emplacement d'une ressource avec un nom et un type spécifié dans un module spécifié.
FindResourceW | HRSRC FindResourceW( HINSTANCE hModule, LPCWSTR lpName, LPCWSTR lpType ); | kernel32.dll | Cette fonction permet de demander l'emplacement d'une ressource avec un nom et un type spécifié dans un module spécifié avec des paramètres de chaine de caractères étendue (Unicode).
FindResourceExA | HRSRC FindResourceExA( HMODULE hModule, LPCTSTR lpType, LPCTSTR lpName, WORD wLanguage ); | kernel32.dll | Cette fonction permet de demander l'emplacement d'une ressource avec un type, un nom et une langue spécifié dans un module spécifié.
FindResourceExW | HRSRC FindResourceExW( HINSTANCE hModule, LPCWSTR lpType, LPCWSTR lpName, WORD wLanguage ); | kernel32.dll | Cette fonction permet de demander l'emplacement d'une ressource avec un type, un nom et une langue spécifié dans un module spécifié avec des paramètres de chaine de caractères étendue (Unicode).
FindWindowA | HWND FindWindowA(LPCTSTR lpClassName, LPCTSTR lpWindowName); | user32.dll | Cette fonction permet de demander le Handle de la première fenêtre d'application correspondant au nom de la fenêtre.
FindWindowExA | HWND FindWindowExA(HWND hwndParent,HWND hwndChildAfter,LPCTSTR lpszClass,LPCTSTR lpszWindow); | user32.dll | Cette fonction permet de demander le Handle d'une fenêtre enfant d'une fenêtre d'application.
FindWindowExW | HWND FindWindowExW(HWND hwndParent,HWND hwndChildAfter, LPCWSTR lpszClass, LPCWSTR lpszWindow); | user32.dll | Cette fonction permet de demander le Handle d'une fenêtre enfant d'une fenêtre d'application avec des paramètres de chaine de caractères étendues (Unicode).
FindWindowW | HWND FindWindowW(LPCWSTR lpClassName, LPCWSTR lpWindowName); | user32.dll | Cette fonction permet de demander le Handle de la première fenêtre d'application correspondant au nom de la fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
FlashWindow | BOOL FlashWindow(HWND hWnd,BOOL bInvert); | user32.dll | Cette fonction permet de faire clignoter une fois une fenêtre d'application.
FlashWindowEx | BOOL FlashWindowEx(PFLASHWINFO pfwi); | user32.dll | Cette fonction permet de faire clignoter plusieurs fois une fenêtre d'application.
FlattenPath | BOOL FlattenPath(HDC hdc); | gdi32.dll | Cette fonction permet de transformer n'importe quel courbe d'un chemin étant sélectionné dans le périphérique de contexte courant de façon à tourner chaque courbe une séquences de lignes.
FloodFill | BOOL FloodFill(HDC hdc, int nXStart, int nYStart, COLORREF crFill); | gdi32.dll | Cette fonction permet d'effectuer le remplissage d'une région de la surface de l'écran en utilisant la brosse courante.
FlushConsoleInputBuffer | BOOL FlushConsoleInputBuffer( HANDLE hConsoleInput ); | kernel32.dll | Cette fonction permet de vider le tampon d'entrée de la console.
FlushFileBuffers | BOOL FlushFileBuffers( HANDLE hFile ); | kernel32.dll | Cette fonction permet d'effacer le tampon pour le fichier spécifié et provoquer l'écriture des données dans le fichier.
FlushInstructionCache | BOOL FlushInstructionCache( HANDLE hProcess, LPCVOID lpBaseAddress, DWORD dwSize ); | kernel32.dll | Cette fonction permet de vider les instructions en cache pour le processus spécifié.
FlushViewOfFile | BOOL FlushViewOfFile( LPCVOID lpBaseAddress, DWORD dwNumberOfBytesToFlush ); | kernel32.dll | Cette fonction permet d'écrire sur le disque un rang d'octets dans une vue d'un fichier.
FoldStringA | int FoldStringA( DWORD dwMapFlags, LPCTSTR lpSrcStr, int cchSrc, LPTSTR lpDestStr, int cchDest ); | kernel32.dll | Cette fonction permet de cartographier une chaine de caractères vers une autre en effectuant les options de transformations spécifié.
FoldStringW | INT FoldStringW( DWORD dwFlags, LPCWSTR src, INT srclen, LPWSTR dst, INT dstlen ); | kernel32.dll | Cette fonction permet de cartographier une chaine de caractères vers une autre en effectuant les options de transformations spécifié avec des paramètres de chaine de caractères étendue (Unicode).
FormatMessageA | DWORD FormatMessageA( DWORD dwFlags, LPCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, LPTSTR lpBuffer, DWORD nSize, va_list * Arguments ); | kernel32.dll | Cette fonction permet de demander un message affecté par un certain format.
FormatMessageW | DWORD FormatMessageW( DWORD dwFlags, PCVOID lpSource, DWORD dwMessageId, DWORD dwLanguageId, LPWSTR lpBuffer, DWORD nSize, va_list * Arguments ); | kernel32.dll | Cette fonction permet de demander le dernier message d'erreur contenu dans le fichier d'erreur système.
FrameRect | int FrameRect(HDC hDC, CONST RECT * lprc, HBRUSH hbr); | user32.dll | Cette fonction permet de dessiner une bordure autour d'un rectangle, en utilisant la brosse spécifié.
FrameRgn | BOOL FrameRgn(HDC hdc, HRGN hrgn, HBRUSH hbr, int nWidth, int nHeight); | gdi32.dll | Cette fonction permet de dessiner une bordure entourant une région spécifié et en utilisant la brosse spécifié.
FreeConsole | BOOL FreeConsole(VOID); | kernel32.dll | Cette fonction permet de libérer une console existante.
FreeDDElParam | BOOL FreeDDElParam(UINT msg, LONG lParam); | user32.dll | Cette fonction permet de libérer la mémoire spécifié d'un message DDE posté.
FreeEnvironmentStringsA | BOOL FreeEnvironmentStringsA( LPTSTR lpszEnvironmentBlock ); | kernel32.dll | Cette fonction permet de libérer un bloc de chaine de caractères d'environnement.
FreeEnvironmentStringsW | BOOL FreeEnvironmentStringsW( LPWSTR lpszEnvironmentBlock ); | kernel32.dll | Cette fonction permet de libérer un bloc de chaine de caractères d'environnement avec des paramètres de chaine de caractères étendue (Unicode).
FreeLibrary | BOOL FreeLibrary(HMODULE hModule); | kernel32.dll | Cette fonction permet d'incrémenter un compteur de référence pour un chargement de module de lien dynamique (DLL).
FreeLibraryAndExitThread | VOID FreeLibraryAndExitThread( HMODULE hLibModule, DWORD dwExitCode ); | kernel32.dll | Cette fonction permet de décrémenté le compteur de référence d'une des bibliothèque de liens dynamique (DLL) et appel alors la fonction «ExitThread».
FreeResource | BOOL FreeResource(HGLOBAL hResource); | kernel32.dll | Cette fonction permet de libérer une ressource.
FreeSid | PVOID FreeSid( PSID pSid ); | advapi32.dll | Cette fonction permet de libérer un identificateur de sécurité (SID) précédemment alloué par la fonction «AllocateAndInitializeSid».
FtpCreateDirectoryA | BOOL FtpCreateDirectory( IN HINTERNET hFtpSession, IN LPCTSTR lpszDirectory ); | wininet.dll | Cette fonction permet d'effectuer la création d'un répertoire sur un protocole FTP.
FtpOpenFileA | HINTERNET FtpOpenFileA( HINTERNET hConnect, LPCTSTR lpszFileName, DWORD dwAccess, DWORD dwFlags, DWORD dwContext ); | wininet.dll | Cette fonction permet d'ouvrir un fichier avec une chaine de caractères ASCIZ sur un protocole FTP.
FtpOpenFileW | static void FtpOpenFileW(WORKREQUEST* workRequest); | wininet.dll | Cette fonction permet d'ouvrir un fichier avec une chaine de caractères étendue (Unicode) sur un protocole FTP.
GdiComment | BOOL GdiComment(HDC hdc, UINT cbSize, CONST BYTE * lpData); | gdi32.dll | Cette fonction permet de copier un commentaire d'un tampon vers un méta fichier spécifié de format étendue.
GdiFlush | BOOL GdiFlush(VOID); | gdi32.dll | Cette fonction permet de vider le traitement en lot courant du processus appelant.
GdiGetBatchLimit | DWORD GdiGetBatchLimit(VOID); | gdi32.dll | Cette fonction permet de retourner le nombre maximum d'appels de fonction étant accumulé dans le traitement par lot courant du processus léger courant.
GdiSetBatchLimit | DWORD GdiSetBatchLimit(DWORD dwLimit); | gdi32.dll | Cette fonction permet de fixer le nombre maximum d'appels de fonction étant accumulé dans le traitement par lot courant du processus léger courant.
GenerateConsoleCtrlEvent | BOOL GenerateConsoleCtrlEvent( DWORD dwCtrlEvent, DWORD dwProcessGroupId ); | kernel32.dll | Cette fonction permet d'envoyer un signal spécifique à un groupe de processus de console.
GetAce | BOOL GetAce( PACL pAcl, DWORD dwAceIndex, LPVOID *pAce ); | advapi32.dll | Cette fonction permet de demander un pointeur sur une structure d'une entrée de contrôle d'accès (ACE) d'une liste de contrôle d'accès (ACL).
GetAclInformation | BOOL GetAclInformation( PACL pAcl, LPVOID pAclInformation, DWORD nAclInformationLength, ACL_INFORMATION_CLASS dwAclInformationClass ); | advapi32.dll | Cette fonction permet de demander les informations concernant une liste de contrôle d'accès (ACL).
GetACP | UINT GetACP(VOID); | kernel32.dll | Cette fonction permet de demander l'identificateur de code de page ANSI courant pour le système d'exploitation.
GetActiveWindow | HWND GetActiveWindow(VOID); | user32.dll | Cette fonction permet de demander le Handle de la fenêtre active.
GetArcDirection | int GetArcDirection(HDC hdc); | gdi32.dll | Cette fonction permet de demander la direction de l'arc courant pour le périphérique de contexte spécifié.
GetAspectRatioFilterEx | BOOL GetAspectRatioFilterEx(HDC hdc, LPSIZE lpAspectRatio); | gdi32.dll | Cette fonction permet de demander l'ajustement de filtre d'aspect ratio courant.
GetAsyncKeyState | SHORT GetAsyncKeyState(int vKey); | user32.dll | Cette fonction permet de retourner l'état de la touche spécifié.
GetAtomNameA | UINT GetAtomNameA( ATOM nAtom, LPTSTR lpBuffer, int nSize ); | kernel32.dll | Cette fonction permet de demander une copie de chaine de caractères associé avec un Atom local spécifié.
GetAtomNameW | UINT GetAtomNameW( ATOM atom, LPWSTR buffer, INT count ); | kernel32.dll | Cette fonction permet de demander une copie de chaine de caractères associé avec un Atom local spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetBinaryTypeA | BOOL GetBinaryTypeA( LPCTSTR lpApplicationName, LPDWORD lpBinaryType ); | kernel32.dll | Cette fonction permet de demander si le fichier est exécutable, et s'il l'est, quel type de fichier exécutable s'agit-il.
GetBinaryTypeW | BOOL GetBinaryTypeW( LPCWSTR lpApplicationName, LPDWORD lpBinaryType ); | kernel32.dll | Cette fonction permet de demander si le fichier est exécutable, et s'il l'est, quel type de fichier exécutable s'agit-il avec des paramètres de chaine de caractères étendue (Unicode).
GetBitmapBits | LONG GetBitmapBits(HBITMAP hbmp, LONG cbBuffer, LPVOID lpvBits); | gdi32.dll | Cette fonction permet de copier les bits du Bitmap spécifié dans un tampon.
GetBitmapDimensionEx | BOOL GetBitmapDimensionEx(HBITMAP hBitmap, LPSIZE lpDimension); | gdi32.dll | Cette fonction permet de demander les dimensions d'un Bitmap.
GetBkColor | COLORREF GetBkColor(HDC hdc); | gdi32.dll | Cette fonction permet de retourner la couleur d'arrière-plan courante.
GetBkMode | int GetBkMode(HDC hdc); | gdi32.dll | Cette fonction permet de demander le mode mixte d'arrière-plan pour le contexte de périphérique spécifié.
GetBoundsRect | UINT GetBoundsRect(HDC hdc, LPRECT lprcBounds, UINT flags); | gdi32.dll | Cette fonction permet de retourner l'accumulation d'informations de limite rectangulaire d'un périphérique de contexte.
GetBrushOrgEx | BOOL GetBrushOrgEx(HDC hdc, LPPOINT lppt); | gdi32.dll | Cette fonction permet de demander l'origine de la brosse courante dans un périphérique de contexte courant.
GetCapture | HWND GetCapture(VOID); | user32.dll | Cette fonction permet de demander le Handle de la fenêtre où la souris est capturé.
GetCaretBlinkTime | UINT GetCaretBlinkTime(VOID); | user32.dll | Cette fonction permet de demander le taux de clignotement du caret.
GetCaretPos | BOOL GetCaretPos(LPPOINT lpPoint); | user32.dll | Cette fonction permet de demander la position courante d'un caret.
GetCharABCWidthsA | BOOL GetCharABCWidthsA(HDC hdc, UINT uFirstChar, UINT uLastChar, LPABC lpabc); | gdi32.dll | Cette fonction permet de demander la largeur, dans son unité de mesure logique, de caractères consécutifs dans une rangée données d'une police de caractères TrueType courant.
GetCharABCWidthsW | BOOL GetCharABCWidthsW(HDC hdc, UINT firstChar, UINT lastChar, LPABC abc); | gdi32.dll | Cette fonction permet de demander la largeur, dans son unité de mesure logique, de caractères consécutifs dans une rangée données d'une police de caractères TrueType courant avec des paramètres de chaines de caractères étendues (Unicode).
GetCharABCWidthsFloatA | BOOL GetCharABCWidthsFloatA(HDC hdc, UINT iFirstChar, UINT iLastChar, LPABCFLOAT lpABCF); | gdi32.dll | Cette fonction permet de demander la largeur, dans son unité de mesure logique, de caractères consécutifs dans une rangée données d'une police de caractères courant.
GetCharABCWidthsFloatW | BOOL GetCharABCWidthsFloatW(HDC hdc, UINT first, UINT last, LPABCFLOAT abcf); | gdi32.dll | Cette fonction permet de demander la largeur, dans son unité de mesure logique, de caractères consécutifs dans une rangée données d'une police de caractères courant avec des paramètres de chaine de caractères étendues (Unicode).
GetCharWidth32A | BOOL GetCharWidth32A(HDC hdc, UINT iFirstChar, UINT iLastChar, LPINT lpBuffer); | gdi32.dll | Cette fonction permet demander la largeur, dans des coordonnées logiques, de caractères consécutifs dans une rangée spécifié d'une police de caractères courante.
GetCharWidth32W | BOOL GetCharWidth32W(HDC hdc, UINT iFirstChar, UINT iLastChar, LPINT lpBuffer); | gdi32.dll | Cette fonction permet demander la largeur, dans des coordonnées logiques, de caractères consécutifs dans une rangée spécifié d'une police de caractères courante avec des paramètres de chaine de caractères étendues (Unicode).
GetCharWidthA | BOOL GetCharWidthA(HDC hdc, UINT iFirstChar, UINT iLastChar, LPINT lpBuffer); | gdi32.dll | Cette fonction permet demander la largeur, dans des coordonnées logiques, de caractères consécutifs dans une rangée spécifié d'une police de caractères courante dans un contexte de compatibilité avec les fonctions 16 bits.
GetCharWidthW | BOOL GetCharWidthW(HDC hdc, UINT iFirstChar, UINT iLastChar, LPINT lpBuffer); | gdi32.dll | Cette fonction permet demander la largeur, dans des coordonnées logiques, de caractères consécutifs dans une rangée spécifié d'une police de caractères courante dans un contexte de compatibilité avec les fonctions 16 bits avec des paramètres de chaine de caractères étendues (Unicode).
GetCharWidthFloatA | BOOL GetCharWidthFloatA(HDC hdc, UINT iFirstChar, UINT iLastChar, PFLOAT pxBuffer); | gdi32.dll | Cette fonction permet de demander la largeur fractionné de caractères consécutifs dans une rangée spécifié de la police de caractères courante.
GetCharWidthFloatW | BOOL GetCharWidthFloatW(HDC hdc, UINT iFirstChar, UINT iLastChar, PFLOAT pxBuffer); | gdi32.dll | Cette fonction permet de demander la largeur fractionné de caractères consécutifs dans une rangée spécifié de la police de caractères courante avec des paramètres de chaine de caractères étendues (Unicode).
GetCharacterPlacementA | DWORD GetCharacterPlacementA(HDC hdc, LPCTSTR lpString, int nCount, int nMaxExtent, LPGCP_RESULTS *lpResults, DWORD dwFlags); | gdi32.dll | Cette fonction permet de demander les informations à propos d'une chaine de caractères, comme la largeur des caractères, le positionnement des carets, l'ordre dans la chaine de caractères et la rendue du glyphe.
GetCharacterPlacementW | DWORD GetCharacterPlacementW(HDC hdc, LPCWSTR lpString, int uCount, int nMaxExtent, GCP_RESULTSW* lpResults, DWORD dwFlags); | gdi32.dll | Cette fonction permet de demander les informations à propos d'une chaine de caractères, comme la largeur des caractères, le positionnement des carets, l'ordre dans la chaine de caractères et la rendue du glyphe avec des paramètres de chaine de caractères étendues (Unicode).
GetClassInfoA | BOOL GetClassInfoA(HINSTANCE hInstance, LPCTSTR lpClassName, LPWNDCLASS lpWndClass); | user32.dll | Cette fonction permet de demander les informations à propos d'une classe de fenêtre.
GetClassInfoExA | BOOL GetClassInfoExA(HINSTANCE hinst, LPCTSTR lpszClass, LPWNDCLASSEX lpwcx); | user32.dll | Cette fonction permet de demander les informations à propos d'une classe de fenêtre en incluant le Handle du petit icône associé avec la fenêtre de classe.
GetClassInfoExW | BOOL GetClassInfoExW(HINSTANCE hinst, LPCWSTR lpszClass, LPWNDCLASSEXW lpwcx); | user32.dll | Cette fonction permet de demander les informations à propos d'une classe de fenêtre en incluant le Handle du petit icône associé avec la fenêtre de classe avec des paramètres de chaine de caractères étendues (Unicode).
GetClassInfoW | BOOL GetClassInfoW(HINSTANCE hInstance, LPCTSTR lpClassName, LPWNDCLASS lpWndClass); | user32.dll | Cette fonction permet de demander les informations à propos d'une classe de fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
GetClassLongA | DWORD GetClassLongA(HWND hWnd,int nIndex); | user32.dll | Cette fonction permet de demander des valeurs d'informations en 32 bits sur une classe.
GetClassLongW | DWORD GetClassLongW(HWND hWnd, int nIndex); | user32.dll | Cette fonction permet de demander des valeurs d'informations en 32 bits sur une classe avec des paramètres de chaine de caractères étendues (Unicode).
GetClassNameA | int GetClassNameA(HWND hWnd,LPTSTR lpClassName,int nMaxCount); | user32.dll | Cette fonction permet de demander le nom d'une classe.
GetClassNameW | int GetClassNameW(HWND hWnd, LPWSTR lpClassName, int nMaxCount); | user32.dll | Cette fonction permet de demander le nom d'une classe avec des paramètres de chaine de caractères étendues (Unicode).
GetClassWord | WORD GetClassWord(HWND hWnd, int nIndex); | user32.dll | Cette fonction permet de demander une valeur 16 bits de déplacement spécifié dans une classe de mémoire supplémentaire pour la classe de fenêtre à laquelle la fenêtre appartient.
GetClientRect | BOOL GetClientRect(HWND hWnd, LPRECT lpRect); | user32.dll | Cette fonction permet de demander les coordonnées client de la région de fenêtre client.
GetClipboardData | HANDLE GetClipboardData(UINT uFormat); | user32.dll | Cette fonction permet de demander le Handle du presse-papier de données courant avec le format spécifié.
GetClipboardFormatNameA | int GetClipboardFormatNameA(UINT format, LPTSTR lpszFormatName, int cchMaxCount); | user32.dll | Cette fonction permet de demander le nom de format de presse-papier enregistré.
GetClipboardFormatNameW | int GetClipboardFormatNameW(UINT format, LPWSTR lpszFormatName, int cchMaxCount); | user32.dll | Cette fonction permet de demander le nom de format de presse-papier enregistré avec des paramètres de chaine de caractères étendues (Unicode).
GetClipboardOwner | HWND GetClipboardOwner(VOID); | user32.dll | Cette fonction permet de demander le Handle de la fenêtre associé à un presse-papier.
GetClipboardViewer | HWND GetClipboardViewer(VOID); | user32.dll | Cette fonction permet de demander le Handle de la première fenêtre d'une chaine visualisation de presse-papier.
GetClipBox | int GetClipBox(HDC hdc, LPRECT lprc); | gdi32.dll | Cette fonction permet de demander les dimensions d'un petit rectangle complètement contenu dans la région de clip courant.
GetClipCursor | BOOL GetClipCursor(LPRECT lpRect); | user32.dll | Cette fonction permet de demander les coordonnées de la fenêtre limitant le déplacement du pointeur de la souris.
GetClipRgn | int GetClipRgn(HDC hdc, HRGN hrgn); | gdi32.dll | Cette fonction permet de demander le Handle d'une région de clip affecté par un périphérique de contexte spécifié.
GetColorAdjustment | BOOL GetColorAdjustment(HDC hdc, LPCOLORADJUSTMENT lpca); | gdi32.dll | Cette fonction permet de demander les valeurs de couleurs d'ajustement pour le contexte de périphérique spécifié.
GetColorSpace | HANDLE GetColorSpace(HDC hdc); | gdi32.dll | Cette fonction permet de demander le Handle courant de l'espace de couleur logique du périphérique de contexte spécifié.
GetCommandLineA | LPTSTR GetCommandLineA(void); | kernel32.dll | Cette fonction permet de retourner la ligne de commande de l'application courante.
GetCommandLineW | LPWSTR GetCommandLineW(VOID); | kernel32.dll | Cette fonction permet de retourner la ligne de commande de l'application courante avec des paramètres de chaine de caractères étendue (Unicode).
GetCommConfig | BOOL GetCommConfig( HANDLE hCommDev, LPCOMMCONFIG lpCC, LPDWORD lpdwSize ); | kernel32.dll | Cette fonction permet de demander la configuration courante pour un périphérique de communication.
GetCommMask | BOOL GetCommMask( HANDLE hFile, LPDWORD lpEvtMask ); | kernel32.dll | Cette fonction permet de demander la valeur d'un masque d'événement pour un périphérique de communication spécifié.
GetCommModemStatus | BOOL GetCommModemStatus( HANDLE hFile, LPDWORD lpModemStat ); | kernel32.dll | Cette fonction permet de demander les valeurs du registre de contrôle du modem.
GetCommProperties | BOOL GetCommProperties( HANDLE hFile, LPCOMMPROP lpCommProp ); | kernel32.dll | Cette fonction permet de remplir le tampon avec des informations concernant les propriétés de communications pour un périphérique de communication spécifié.
GetCommState | BOOL GetCommState( HANDLE hFile, LPDCB lpDCB ); | kernel32.dll | Cette fonction permet de remplir un bloc de contrôle de périphérique (une structure DCB) avec les ajustements de contrôle courant pour un périphérique de communication spécifié.
GetCommTimeouts | BOOL GetCommTimeouts( HANDLE hFile, LPCOMMTIMEOUTS lpCommTimeouts ); | kernel32.dll | Cette fonction permet de demander les paramètres de dépassement de délai pour toutes les opérations de lecture ou d'écriture pour un périphérique de communication spécifié.
GetCompressedFileSizeA | DWORD GetCompressedFileSizeA( LPCTSTR lpFileName, LPDWORD lpFileSizeHigh ); | kernel32.dll | Cette fonction permet de demander le nombre d'octets d'une unité d'entreposage actuellement utilisé pour un fichier spécifié.
GetCompressedFileSizeW | DWORD GetCompressedFileSizeW( LPCWSTR name, LPDWORD size_high ); | kernel32.dll | Cette fonction permet de demander le nombre d'octets d'une unité d'entreposage actuellement utilisé pour un fichier spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetComputerNameA | BOOL GetComputerNameA(LPTSTR lpBuffer,LPDWORD nSize); | kernel32.dll | Cette fonction permet de demander le nom de l'ordinateur sous forme d'une chaine de caractères ASCIZ.
GetComputerNameW | BOOL GetComputerNameW( LPWSTR lpBuffer, PDWORD nSize ); | kernel32.dll | Cette fonction permet de demander le nom de l'ordinateur sous forme d'une chaine de caractères ASCIZ avec des paramètres de chaine de caractères étendue (Unicode).
GetComputerNameExA | BOOL GetComputerNameExA(COMPUTER_NAME_FORMAT NameType, LPTSTR lpBuffer, LPDWORD lpnSize); | kernel32.dll | Cette fonction permet de retourner la nom NetBIOS ou DNS de l'ordinateur local.
GetComputerObjectNameA | BOOLEAN GetComputerObjectNameA( EXTENDED_NAME_FORMAT NameFormat, LPTSTR lpNameBuffer, PULONG lpnSize ); | secur32.dll | Cette fonction permet de retourner le nom de l'ordinateur dans un format spécifié.
GetConsoleCursorInfo | BOOL GetConsoleCursorInfo( HANDLE hConsoleOutput, PCONSOLE_CURSOR_INFO lpConsoleCursorInfo ); | kernel32.dll | Cette fonction permet de demander des informations à propos de la taille et de la visibilité du curseur pour le tampon de console écran spécifié.
GetConsoleCP | UINT GetConsoleCP(VOID); | kernel32.dll | Cette fonction permet de demander l'identité de code de page utilisé pour la console associé avec le processus appelant.
GetConsoleMode | BOOL GetConsoleMode( HANDLE hConsoleHandle, LPDWORD lpMode ); | kernel32.dll | Cette fonction permet de demander le mode d'entrée courant pour le tampon d'entrée de la console ou le mode de sortie courant pour le tampon d'écran de la console.
GetConsoleOutputCP | UINT GetConsoleOutputCP(VOID); | kernel32.dll | Cette fonction permet de retourner l'identité de code de page de sortie utilisé par la console associé avec le processus appelant.
GetConsoleScreenBufferInfo | BOOL GetConsoleScreenBufferInfo( HANDLE hConsoleOutput, PCONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo ); | kernel32.dll | Cette fonction permet de demander les informations à propos du tampon d'écran de la console spécifié.
GetConsoleTitleA | DWORD GetConsoleTitleA(LPSTR title, DWORD size); | kernel32.dll | Cette fonction permet de retourner le nom de la console courante.
GetConsoleTitleW | DWORD GetConsoleTitleW( LPWSTR title, DWORD size ); | kernel32.dll | Cette fonction permet de retourner le nom de la console courante avec des paramètres de chaine de caractères étendue (Unicode).
GetCPInfo | BOOL GetCPInfo(UINT CodePage, LPCPINFO lpCPInfo); | kernel32.dll | Cette fonction permet de retourner des informations sur le code de page spécifié.
GetCurrencyFormatA | int GetCurrencyFormatA( LCID Locale, DWORD dwFlags, LPCTSTR lpValue, CONST CURRENCYFMT * lpFormat, LPTSTR lpCurrencyStr, int cchCurrency ); | kernel32.dll | Cette fonction permet de demander la chaine de caractères du format d'un nombre avec une chaine de caractères de monnaie pour une localité spécifié.
GetCurrencyFormatW | INT GetCurrencyFormatW( LCID lcid, DWORD dwFlags, LPCWSTR lpszValue, const CURRENCYFMTW* lpFormat, LPWSTR lpCurrencyStr, int cchOut ); | kernel32.dll | Cette fonction permet de demander la chaine de caractères du format d'un nombre avec une chaine de caractères de monnaie pour une localité spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetCurrentDirectoryA | DWORD GetCurrentDirectoryA( DWORD nBufferLength, LPTSTR lpBuffer); | kernel32.dll | Cette fonction permet de demander le répertoire courant du processus courant.
GetCurrentDirectoryW | DWORD GetCurrentDirectoryW( DWORD nBufferLength, LPWSTR lpBuffer ); | kernel32.dll | Cette fonction permet de demander le répertoire courant du processus courant avec des paramètres de chaine de caractères étendue (Unicode).
GetCurrentHwProfileA | BOOL GetCurrentHwProfileA( LPHW_PROFILE_INFOA pInfo ); | advapi32.dll | Cette fonction pemret de demander le profile matériel courant.
GetCurrentHwProfileW | BOOL GetCurrentHwProfileW( LPHW_PROFILE_INFOW pInfo ); | advapi32.dll | Cette fonction pemret de demander le profile matériel courant avec des paramètres de chaine de caractères étendue (Unicode).
GetCurrentObject | HGDIOBJ GetCurrentObject(HDC hdc, UINT uObjectType); | gdi32.dll | Cette fonction permet de retourner l'objet sélectionné courant du type spécifié.
GetCurrentPositionEx | BOOL GetCurrentPositionEx(HDC hdc, LPPOINT lpPoint); | gdi32.dll | Cette fonction permet de demander la position courante dans des coordonnées logiques.
GetCurrentProcess | HANDLE WINAPI GetCurrentProcess(void); | kernel32.dll | Cette fonction permet de retourner le Handle du processus courant.
GetCurrentProcessId | DWORD GetCurrentProcessId(VOID); | kernel32.dll | Cette fonction permet de demander l'identificateur de processus courant
GetCurrentProcessorNumber | DWORD GetCurrentProcessorNumber(void); | kernel32.dll | Cette fonction permet de demander le nombre de processeur du processus courant lors de l'appel d'une fonction
GetCurrentThread | HANDLE WINAPI GetCurrentThread(void); | kernel32.dll | Cette fonction permet de retourner le Handle du processus courant.
GetCurrentThreadId | DWORD WINAPI GetCurrentThreadId(void); | kernel32.dll | Cette fonction permet de retourner l'identificateur du processus courant.
GetCursor | HCURSOR GetCursor(VOID); | user32.dll | Cette fonction permet de demander le Handle du curseur courant.
GetCursorPos | BOOL GetCursorPos(LPPOINT lpPoint); | user32.dll | Cette fonction permet de demander la position du pointeur de souris à l'écran
GetDateFormatA | int GetDateFormatA( LCID Locale, DWORD dwFlags, CONST SYSTEMTIME * lpDate, LPCTSTR lpFormat, LPTSTR lpDateStr, int cchDate ); | kernel32.dll | Cette fonction permet de demander la date dans une chaine de caractères ASCIZ selon le format spécifié.
GetDateFormatW | int GetDateFormatW( LCID lcid, DWORD dwFlags, const SYSTEMTIME* lpTime, LPCWSTR lpFormat, LPWSTR lpDateStr, int cchOut ); | kernel32.dll | Cette fonction permet de demander la date dans une chaine de caractères ASCIZ selon le format spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetDC | HDC GetDC(HWND hWnd); | user32.dll | Cette fonction permet de demander le contexte d'objet d'une fenêtre d'application.
GetDCEx | HDC GetDCEx(HWND hWnd, HRGN hrgnClip, DWORD flags); | user32.dll | Cette fonction permet de demander le Handle du périphérique de contexte pour la fenêtre spécifié.
GetDCOrgEx | BOOL GetDCOrgEx(HDC hdc, LPPOINT lpPoint); | gdi32.dll | Cette fonction permet de demander l'origine de translation final d'un périphérique de contexte spécifié.
GetDefaultCommConfigA | BOOL GetDefaultCommConfigA( LPCSTR lpszName, LPCOMMCONFIG lpCC, LPDWORD lpdwSize ); | kernel32.dll | Cette fonction permet de demander la configuration par défaut d'un périphérique de communication.
GetDefaultCommConfigW | BOOL GetDefaultCommConfigW( LPCWSTR lpszName, LPCOMMCONFIG lpCC, LPDWORD lpdwSize ); | kernel32.dll | Cette fonction permet de demander la configuration par défaut d'un périphérique de communication avec des paramètres de chaine de caractères étendue (Unicode).
GetDesktopWindow | HWND GetDesktopWindow(VOID); | user32.dll | Cette fonction permet de demander le Handle attribué à la fenêtre du bureau.
GetDeviceCaps | int GetDeviceCaps(HDC hdc, int nIndex); | gdi32.dll | Cette fonction permet de demander les informations d'un périphérique spécifié à propos du périphérique d'affichage.
GetDeviceGammaRamp | BOOL GetDeviceGammaRamp(HDC hdc, LPVOID lpRamp); | gdi32.dll | Cette fonction permet de demander la rampe gamma d'un panneau d'affichage de couleur directe.
GetDialogBaseUnits | LONG GetDialogBaseUnits(VOID); | user32.dll | Cette fonction permet de retourner l'unité de base de la boite de dialogue qu'utilise Windows quand il créer une boite de dialogue.
GetDIBColorTable | UINT GetDIBColorTable(HDC hdc, UINT uStartIndex, UINT cEntries, RGBQUAD *pColors); | gdi32.dll | Cette fonction permet de demander les valeurs de couleurs RVB (rouge, vert, bleu) d'une rangée d'entrées d'une table de couleurs d'une section DIB Bitmap étant actuellement sélectionné dans un périphérique de contexte spécifié.
GetDIBits | int GetDIBits(HDC hdc, HBITMAP hbmp, UINT uStartScan, UINT cScanLines, LPVOID lpvBits, LPBITMAPINFO lpbi, UINT uUsage); | gdi32.dll | Cette fonction permet de demander les bits d'un Bitmap compatible et copie celui-ci dans un tampon DIB en utilisant le format spécifié.
GetDiskFreeSpaceA | BOOL GetDiskFreeSpaceA( LPCTSTR lpRootPathName, LPDWORD lpSectorsPerCluster, LPDWORD lpBytesPerSector, LPDWORD lpNumberOfFreeClusters, LPDWORD lpTotalNumberOfClusters ); | kernel32.dll | Cette fonction permet de demander l'espace de libre sur une unité disque.
GetDiskFreeSpaceExA | BOOL GetDiskFreeSpaceExA( LPCSTR root, PULARGE_INTEGER avail, PULARGE_INTEGER total, PULARGE_INTEGER totalfree ); | kernel32.dll | Cette fonction permet de demander des informations global sur l'espace de libre sur une unité disque.
GetDiskFreeSpaceExW | BOOL GetDiskFreeSpaceExW( LPCWSTR root, PULARGE_INTEGER avail, PULARGE_INTEGER total, PULARGE_INTEGER totalfree ); | kernel32.dll | Cette fonction permet de demander des informations global sur l'espace de libre sur une unité disque avec des paramètres de chaine de caractères étendue (Unicode).
GetDiskFreeSpaceW | BOOL GetDiskFreeSpaceW( LPCWSTR lpRootPathName, PDWORD lpSectorsPerCluster, PDWORD lpBytesPerSector, PDWORD lpNumberOfFreeClusters, PDWORD lpTotalNumberOfClusters ); | kernel32.dll | Cette fonction permet de demander l'espace de libre sur une unité disque avec des paramètres de chaine de caractères étendue (Unicode).
GetDlgCtrlID | int GetDlgCtrlID(HWND hwndCtl); | user32.dll | Cette fonction permet de retourner le Handle de la fenêtre enfant.
GetDlgItem | HWND GetDlgItem(HWND hDlg, int nIDDlgItem); | user32.dll | Cette fonction permet de demander le Handle d'un contrôle étant données par la boite de dialogue.
GetDlgItemInt | UINT GetDlgItemInt(HWND hDlg, int nIDDlgItem, BOOL* lpTranslated, BOOL bSigned); | user32.dll | Cette fonction permet d'effectuer la translation du texte d'un contrôle d'une boite de dialogue en une valeur entière.
GetDlgItemTextA | UINT GetDlgItemTextA(HWND hDlg, int nIDDlgItem, LPTSTR lpString, int nMaxCount); | user32.dll | Cette fonction permet de demander le titre ou le texte associé avec un contrôle de boite de dialogue.
GetDlgItemTextW | UINT GetDlgItemTextW(HWND hDlg, int nIDDlgItem, LPWSTR lpString, int nMaxCount); | user32.dll | Cette fonction permet de demander le titre ou le texte associé avec un contrôle de boite de dialogue avec des paramètres de chaine de caractères étendues (Unicode).
GetDoubleClickTime | UINT GetDoubleClickTime(VOID); | user32.dll | Cette fonction permet de demander le temps maximal autorisé pour que des clics sur les boutons de la souris soit considéré comme un double-clic.
GetDriveTypeA | UINT GetDriveTypeA(LPCTSTR lpRootPathName); | kernel32.dll | Cette fonction permet de demander le type d'unité disque.
GetDriveTypeW | UINT GetDriveTypeW(LPCWSTR root); | kernel32.dll | Cette fonction permet de demander le type d'unité disque avec des paramètres de chaine de caractères étendue (Unicode).
GetEnhMetaFileA | HENHMETAFILE GetEnhMetaFileA(LPCTSTR lpszMetaFile); | gdi32.dll | Cette fonction permet de créer un Handle étant identifié par un fichier méta de format étendue entreposé dans le fichier spécifié.
GetEnhMetaFileW | HENHMETAFILE GetEnhMetaFileW(LPCWSTR lpszMetaFile); | gdi32.dll | Cette fonction permet de créer un Handle étant identifié par un fichier méta de format étendue entreposé dans le fichier spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetEnhMetaFileBits | UINT GetEnhMetaFileBits(HENHMETAFILE hemf, UINT cbBuffer, LPBYTE lpbBuffer); | gdi32.dll | Cette fonction permet de demander le contenu d'un fichier méta spécifié de format étendue et le copie dans un tampon.
GetEnhMetaFileDescriptionA | UINT GetEnhMetaFileDescriptionA(HENHMETAFILE hemf, UINT cchBuffer, LPTSTR lpszDescription); | gdi32.dll | Cette fonction permet de demander une description texte optionnel d'un fichier méta de format étendue et copie la chaine de caractères dans un tampon spécifié.
GetEnhMetaFileDescriptionW | UINT GetEnhMetaFileDescriptionW(HENHMETAFILE hmf, UINT size, LPWSTR buf); | gdi32.dll | Cette fonction permet de demander une description texte optionnel d'un fichier méta de format étendue et copie la chaine de caractères dans un tampon spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetEnhMetaFileHeader | UINT GetEnhMetaFileHeader(HENHMETAFILE hemf, UINT cbBuffer, LPENHMETAHEADER lpemh); | gdi32.dll | Cette fonction permet de demander l'enregistrement contenu dans l'entête du fichier méta spécifié de format étendue.
GetEnhMetaFilePaletteEntries | UINT GetEnhMetaFilePaletteEntries(HENHMETAFILE hemf, UINT cEntries, LPPALETTEENTRY lppe); | gdi32.dll | Cette fonction permet de demander les entrées de palette optionnel pour le fichier méta étendue spécifié.
GetEnhMetaFilePixelFormat | UINT GetEnhMetaFilePixelFormat(HENHMETAFILE hemf, DWORD cbBuffer, const PIXELFORMATDESCRIPTOR *ppfd); | gdi32.dll | Cette fonction permet de demander les informations de format de pixel pour un fichier méta étendue.
GetEnvironmentStringsA | LPTCH GetEnvironmentStringsA(void); | kernel32.dll | Cette fonction permet de demander les variables d'environnements du processus courant.
GetEnvironmentStringsW | LPWSTR GetEnvironmentStringsW(void); | kernel32.dll | Cette fonction permet de demander les variables d'environnements du processus courant avec des paramètres de chaine de caractères étendue (Unicode).
GetEnvironmentVariableA | DWORD GetEnvironmentVariableA(LPCTSTR lpName,LPTSTR lpBuffer,DWORD nSize); | kernel32.dll | Cette fonction permet de demander la valeur d'une variable d'environnement du système d'exploitation.
GetEnvironmentVariableW | DWORD GetEnvironmentVariableW( LPCWSTR lpName, LPWSTR lpBuffer, DWORD nSize ); | kernel32.dll | Cette fonction permet de demander la valeur d'une variable d'environnement du système d'exploitation avec des paramètres de chaine de caractères étendue (Unicode).
GetExitCodeProcess | BOOL GetExitCodeProcess( HANDLE hProcess, LPDWORD lpExitCode); | kernel32.dll | Cette fonction permet de demander le code d'état de terminaison d'un processus spécifié.
GetExitCodeThread | BOOL GetExitCodeThread(HANDLE hThread,LPDWORD lpExitCode); | kernel32.dll | Cette fonction permet de demander le code d'état de terminaison d'un processus léger (Thread) spécifié.
GetFileAttributesA | DWORD GetFileAttributesA(LPCTSTR lpFileName); | kernel32.dll | Cette fonction permet de demander les attributs d'un fichier ou d'un répertoire.
GetFileAttributesExA | BOOL GetFileAttributesExA( LPCSTR lpFileName, GET_FILEEX_INFO_LEVELS fInfoLevelId, PVOID lpFileInformation ); | kernel32.dll | Cette fonction permet de demander les informations étendues d'attributs d'un fichier ou d'un répertoire.
GetFileAttributesExW | BOOL GetFileAttributesExW( LPCWSTR lpFileName, GET_FILEEX_INFO_LEVELS fInfoLevelId, PVOID lpFileInformation ); | kernel32.dll | Cette fonction permet de demander les informations étendues d'attributs d'un fichier ou d'un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
GetFileAttributesW | DWORD GetFileAttributesW(LPCWSTR lpFileName); | kernel32.dll | Cette fonction permet de demander les attributs d'un fichier ou d'un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
GetFileInformationByHandle | BOOL GetFileInformationByHandle( HANDLE hFile, LPBY_HANDLE_FILE_INFORMATION lpFileInformation, ); | kernel32.dll | Cette fonction permet de demander les informations associé au fichier spécifié.
GetFileSecurityA | BOOL GetFileSecurityA( LPCTSTR lpFileName, SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD nLength, LPDWORD lpnLengthNeeded ); | advapi32.dll | Cette fonction permet de demander les informations spécifié sur la sécurité d'un fichier ou d'un répertoire.
GetFileSecurityW | BOOL GetFileSecurityW( LPCWSTR lpFileName, SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD nLength, LPDWORD lpnLengthNeeded ); | advapi32.dll | Cette fonction permet de demander les informations spécifié sur la sécurité d'un fichier ou d'un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
GetFileSize | DWORD GetFileSize( HANDLE hFile, LPDWORD lpFileSizeHigh, ); | kernel32.dll | Cette fonction permet de demander la taille, en octets, d'un fichier spécifié.
GetFileTime | BOOL GetFileTime(HANDLE hFile,LPFILETIME lpCreationTime,LPFILETIME lpLastAccessTime,LPFILETIME lpLastWriteTime); | kernel32.dll | Cette fonction permet de demander la date et l'heure d'un fichier de sa création, de sa dernière modification ou de son dernière accès.
GetFileType | DWORD GetFileType(HANDLE hFile); | kernel32.dll | Cette fonction permet de retourner le type d'un fichier spécifié.
GetFileVersionInfoSizeA | DWORD GetFileVersionInfoSizeA(LPTSTR lptstrFilename,LPDWORD lpdwHandle); | version.dll | Cette fonction permet de demander la taille de l'entête d'information de version du fichier spécifié.
GetFocus | HWND GetFocus(VOID); | user32.dll | Cette fonction permet de demander le focus d'entrée de la fenêtre spécifié.
GetFontData | DWORD GetFontData(HDC hdc, DWORD dwTable, DWORD dwOffset, LPVOID lpvBuffer, DWORD cbData); | gdi32.dll | Cette fonction permet de demander les données de police de caractères métriques pour une police de caractères TrueType.
GetFontLanguageInfo | DWORD GetFontLanguageInfo(HDC hdc); | gdi32.dll | Cette fonction permet de retourner les informations à propos de sélection de police de caractères courante dans l'affichage de contexte spécifié.
GetForegroundWindow | HWND GetForegroundWindow(VOID); | user32.dll | Cette fonction permet de demander le Handle de la fenêtre d'application courante.
GetFullPathNameA | DWORD GetFullPathNameA( LPCTSTR lpFileName, DWORD nBufferLength, LPTSTR lpBuffer, LPTSTR *lpFilePart ); | kernel32.dll | Cette fonction permet de demander le chemin et le nom de fichier complet pour un fichier spécifié.
GetFullPathNameW | DWORD GetFullPathNameW( LPCWSTR lpFileName, DWORD nBufferLength, LPWSTR lpBuffer, LPWSTR *lpFilePart ); | kernel32.dll | Cette fonction permet de demander le chemin et le nom de fichier complet pour un fichier spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetGlyphOutlineA | DWORD GetGlyphOutlineA(HDC hdc, UINT uChar, UINT uFormat, LPGLYPHMETRICS lpgm, DWORD cbBuffer, LPVOID lpvBuffer, CONST MAT2 * lpmat2); | gdi32.dll | Cette fonction permet de demander ligne de limite ou du Bitmap d'un caractère d'une police de caractères TrueType étant sélectionné dans le périphérique de contexte spécifié.
GetGlyphOutlineW | DWORD GetGlyphOutlineW(HDC hdc, UINT uChar, UINT uFormat, LPGLYPHMETRICS lpgm, DWORD cbBuffer, LPVOID lpvBuffer, CONST MAT2 * lpmat2); | gdi32.dll | Cette fonction permet de demander ligne de limite ou du Bitmap d'un caractère d'une police de caractères TrueType étant sélectionné dans le périphérique de contexte spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetGraphicsMode | int GetGraphicsMode(HDC hdc); | gdi32.dll | Cette fonction permet de demander le mode graphique courant pour le périphérique de contexte courant.
GetGuiResources | DWORD GetGuiResources(HANDLE hProcess, DWORD uiFlags); | kernel32.dll | Cette fonction permet de demander le nombre d'identificateur de GUI (Interface graphique utilisateur) du processus courant.
GetHandleInformation | BOOL GetHandleInformation( HANDLE hObject, LPDWORD lpdwFlags ); | kernel32.dll | Cette fonction permet de demander les informations conçernant certaines propriétés d'un objet avec un identificateur Handle.
GetICMProfileA | BOOL GetICMProfileA(HDC hdc, DWORD cbName, LPTSTR lpszFilename); | gdi32.dll | Cette fonction permet de demander le nom du fichier de profile de couleurs pour le périphérique associé avec le périphérique de contexte spécifié.
GetICMProfileW | BOOL GetICMProfileW(HDC hdc, LPDWORD size, LPWSTR filename); | gdi32.dll | Cette fonction permet de demander le nom du fichier de profile de couleurs pour le périphérique associé avec le périphérique de contexte spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetIconInfo | BOOL GetIconInfo(HICON hIcon,PICONINFO piconinfo); | user32.dll | Cette fonction permet de demander les informations à propos de l'icône ou du curseur spécifié.
GetInputState | BOOL GetInputState(VOID); | user32.dll | Cette fonction permet d'indiquer si un événement de clic de souris ou de clavier est survenue dans la file d'attente du système du traitement requis.
GetIpStatistics | DWORD GetIpStatistics(PMIB_IPSTATS pStats); | iphlpapi.dll | Cette fonction permet de demander les informations de statistique sur le IP de l'ordinateur.
GetJobA | BOOL GetJobA( HANDLE hPrinter, DWORD JobId, DWORD Level, LPBYTE pJob, DWORD cbBuf, LPDWORD pcbNeeded ); | winspool.drv | Cette fonction permet de demander les données d'un travail contenu dans le tampon d'impressions de l'imprimante.
GetKBCodePage | UINT GetKBCodePage(VOID); | user32.dll | Cette fonction retourne le code de page chargé par le système d'exploitation Windows.
GetKernelObjectSecurity | BOOL GetKernelObjectSecurity( HANDLE Handle, SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD nLength, LPDWORD lpnLengthNeeded ); | advapi32.dll | Cette fonction permet de demander une copie du descripteur de sécurité protégé d'un objet du noyau du système d'exploitation.
GetKerningPairs | DWORD GetKerningPairs(HDC hdc, DWORD nNumPairs, LPKERNINGPAIR lpkrnpair); | gdi32.dll | Cette fonction permet de demander les paires de crénages de caractères pour la police de caractères courante sélectionné du périphérique de contexte spécifié.
GetKeyboardLayout | HKL GetKeyboardLayout(DWORD dwLayout); | user32.dll | Cette fonction permet de demander la couche de clavier active pour le processus léger spécifié.
GetKeyboardLayoutList | UINT GetKeyboardLayoutList(int nBuff, HKL FAR * lpList); | user32.dll | Cette fonction permet de demander le Handle de la couche de clavier correspondant à l'ensemble d'entrée courant local dans le système.
GetKeyboardLayoutNameA | BOOL GetKeyboardLayoutNameA(LPTSTR pwszKLID); | user32.dll | Cette fonction permet de demander le nom des couches de clavier active.
GetKeyboardLayoutNameW | BOOL GetKeyboardLayoutNameW(LPWSTR pwszKLID); | user32.dll | Cette fonction permet de demander le nom des couches de clavier active avec des paramètres de chaine de caractères étendues (Unicode).
GetKeyboardState | BOOL GetKeyboardState(PBYTE lpKeyState); | user32.dll | Cette fonction permet de demander l'état des 256 touches virtuel de clavier.
GetKeyboardType | int GetKeyboardType(int nTypeFlag); | user32.dll | Cette fonction permet de demander les informations à propos du clavier courant.
GetKeyNameTextA | int GetKeyNameTextA(LONG lParam, LPTSTR lpString, int nSize); | user32.dll | Cette fonction permet de demander une chaine de caractères représentant le nom d'une touche du clavier.
GetKeyNameTextW | int GetKeyNameTextW(LONG lParam, LPWSTR lpString, int nSize); | user32.dll | Cette fonction permet de demander une chaine de caractères représentant le nom d'une touche du clavier avec des paramètres de chaine de caractères étendues (Unicode).
GetKeyState | SHORT GetKeyState(int nVirtKey); | user32.dll | Cette fonction permet de demander l'état d'une touche virtuel de clavier.
GetLargestConsoleWindowSize | COORD GetLargestConsoleWindowSize( HANDLE hConsoleOutput ); | kernel32.dll | Cette fonction permet de demander la taille de la fenêtre de console la plus large possible en se basant sur la police de caractères et la taille d'affichage.
GetLastActivePopup | HWND GetLastActivePopup(HWND hWnd); | user32.dll | Cette fonction permet de demander laquelle des fenêtres du propriétaire de la fenêtre POP-UP a été récamment activé.
GetLastError | DWORD GetLastError(VOID); | kernel32.dll | Cette fonction permet de demander la dernière erreur s'étant produite dans une API.
GetLengthSid | DWORD GetLengthSid( PSID pSid ); | advapi32.dll | Cette fonction permet de retourner la longueur, en octets, d'une structure valide d'identificateur de sécurité (SID).
GetLocaleInfoA | int GetLocaleInfoA(LCID Locale,LCTYPE LCType,LPTSTR lpLCData,int cchData); | kernel32.dll | Cette fonction permet de demander des informations de nature local sur le système.
GetLocaleInfoW | INT GetLocaleInfoW( LCID lcid, LCTYPE lctype, LPWSTR buffer, INT len ); | kernel32.dll | Cette fonction permet de demander des informations de nature local sur le système avec des paramètres de chaine de caractères étendue (Unicode).
GetLocalTime | VOID GetLocalTime( LPSYSTEMTIME lpSystemTime ); | kernel32.dll | Cette fonction permet de demander la date et l'heure local du système.
GetLogColorSpaceA | BOOL GetLogColorSpaceA(HCOLORSPACE hColorSpace, LPLOGCOLORSPACE lpbuffer, DWORD nSize); | gdi32.dll | Cette fonction permet de demander les informations à propos de l'espace de couleurs logiques identifié par le Handle spécifié.
GetLogColorSpaceW | BOOL GetLogColorSpaceW(HCOLORSPACE a0, LPLOGCOLORSPACEW a1, DWORD a2); | gdi32.dll | Cette fonction permet de demander les informations à propos de l'espace de couleurs logiques identifié par le Handle spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetLogicalDrives | DWORD GetLogicalDrives(VOID); | kernel32.dll | Cette fonction permet de demander quel sont les unités de disque valide.
GetLogicalDriveStringsA | DWORD GetLogicalDriveStringsA( DWORD nBufferLength, LPTSTR lpBuffer ); | kernel32.dll | Cette fonction permet de remplir un tampon avec une chaine de caractères spécifiant une unité de disque système valide.
GetLogicalDriveStringsW | DWORD GetLogicalDriveStringsW( DWORD nBufferLength, LPWSTR lpBuffer ); | kernel32.dll | Cette fonction permet de remplir un tampon avec une chaine de caractères spécifiant une unité de disque système valide avec des paramètres de chaine de caractères étendue (Unicode).
GetLogicalProcessorInformation | BOOL GetLogicalProcessorInformation( PSYSTEM_LOGICAL_PROCESSOR_INFORMATION Buffer, PDWORD ReturnLength); | kernel32.dll | Cette fonction permet de demander des informations concernant les processeurs logiques et le matériel associé.
GetMailslotInfo | BOOL GetMailslotInfo( HANDLE hMailslot, LPDWORD lpMaxMessageSize, LPDWORD lpNextSize, LPDWORD lpMessageCount, LPDWORD lpReadTimeout ); | kernel32.dll | Cette fonction permet de demander des informations pour une slot de courriel.
GetMapMode | int GetMapMode(HDC hdc); | gdi32.dll | Cette fonction permet de demander le mode de cartographie courant.
GetMenu | HMENU GetMenu(HWND hWnd); | user32.dll | Cette fonction permet de demander le Handle du menu déroulant de la fenêtre d'application spécifié.
GetMenuCheckMarkDimensions | LONG GetMenuCheckMarkDimensions(VOID); | user32.dll | Cette fonction permet de retourner les dimensions du Bitmap marqué par défaut.
GetMenuContextHelpId | DWORD GetMenuContextHelpId(HMENU hmenu); | user32.dll | Cette fonction permet de demander l'identifiant de contexte d'aide associé avec le menu spécifié.
GetMenuDefaultItem | UINT GetMenuDefaultItem(HMENU hMenu, UINT fByPos, UINT gmdiFlags); | user32.dll | Cette fonction permet de demander l'item de menu par défaut du menu spécifié.
GetMenuItemCount | int GetMenuItemCount(HMENU hMenu); | user32.dll | Cette fonction permet de demander le nombre d'item que contient menu déroulant.
GetMenuItemID | UINT GetMenuItemID(HMENU hMenu, int nPos); | user32.dll | Cette fonction permet de demander les identificateurs d'un emplacement d'item de menu d'une position spécifié.
GetMenuItemInfoA | BOOL GetMenuItemInfoA(HMENU hMenu, UINT uItem, BOOL fByPosition, LPMENUITEMINFO lpmii); | user32.dll | Cette fonction permet de demander les informations à propos de l'item de menu.
GetMenuItemInfoW | BOOL GetMenuItemInfoW(HMENU hMenu, UINT uItem, BOOL fByPosition, LPMENUITEMINFOW lpmii); | user32.dll | Cette fonction permet de demander les informations à propos de l'item de menu avec des paramètres de chaine de caractères étendues (Unicode).
GetMenuItemRect | BOOL GetMenuItemRect(HWND hWnd, HMENU hMenu, UINT uItem, LPRECT lprcItem); | user32.dll | Cette fonction permet de demander les limites rectangulaires pour l'item de menu spécifié.
GetMenuState | UINT GetMenuState(HMENU hMenu, UINT uId, UINT uFlags); | user32.dll | Cette fonction permet de demander l'état des drapeaux associés avec l'item de menu spécifié.
GetMenuStringA | int GetMenuStringA(HMENU hMenu, UINT uIDItem, LPTSTR lpString, int nMaxCount, UINT uFlag); | user32.dll | Cette fonction permet de copier l'étiquette d'un item de menu dans un tampon.
GetMenuStringW | int GetMenuStringW(HMENU hMenu, UINT uIDItem, LPWSTR lpString, int nMaxCount, UINT uFlag); | user32.dll | Cette fonction permet de copier l'étiquette d'un item de menu dans un tampon avec des paramètres de chaine de caractères étendues (Unicode).
GetMessageA | BOOL GetMessageA(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax); | user32.dll | Cette fonction permet de demander un message d'une application de file d'attente de message dans une structure spécifié.
GetMessageW | BOOL GetMessageW(LPMSG lpMsg, HWND hWnd, UINT wMsgFilterMin, UINT wMsgFilterMax); | user32.dll | Cette fonction permet de demander un message d'une application de file d'attente de message dans une structure spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetMessageExtraInfo | LONG GetMessageExtraInfo(VOID); | user32.dll | Cette fonction permet de demander les informations supplémentaires associés avec le dernier message des fonctions GetMessage ou PeekMessage.
GetMessagePos | DWORD GetMessagePos(VOID); | user32.dll | Cette fonction permet de retourner une valeur long représentant une position de curseur dans une coordonnée d'écran.
GetMessageTime | LONG GetMessageTime(VOID); | user32.dll | Cette fonction permet de retourner l'heure du dernier message reçu par la fonction GetMessage.
GetMetaFileA | HMETAFILE GetMetaFileA(LPCTSTR lpszFile); | gdi32.dll | Cette fonction permet de créer un Handle identifiant le format Windows de fichier de méta données.
GetMetaFileW | HMETAFILE GetMetaFileW(LPCWSTR lpszMetaFile); | gdi32.dll | Cette fonction permet de créer un Handle identifiant le format Windows de fichier de méta données avec des paramètres de chaine de caractères étendues (Unicode).
GetMetaFileBitsEx | UINT GetMetaFileBitsEx(HMETAFILE hmf, UINT nSize, LPVOID lpvData); | gdi32.dll | Cette fonction permet de demander le contenu d'un fichier méta de format Windows et copie le contenu dans un tampon spécifié.
GetMetaRgn | int GetMetaRgn(HDC hdc, HRGN hrgn); | gdi32.dll | Cette fonction permet de demander la région méta courante pour le périphérique de contexte spécifié.
GetMiterLimit | BOOL GetMiterLimit(HDC hdc, PFLOAT peLimit); | gdi32.dll | Cette fonction permet de demander la limite mitre pour le périphérique de contexte spécifié.
GetModuleFileNameA | DWORD GetModuleFileNameA( HMODULE hModule, LPTSTR lpFilename, DWORD nSize ); | kernel32.dll | Cette fonction permet de demander un nom de fichier long ou demande le nom complet de chemin et nom de fichier pour un fichier exécutable contenu dans le module spécifié.
GetModuleFileNameW | DWORD GetModuleFileNameW ( HMODULE hModule, LPWSTR lpFileName, DWORD size ); | kernel32.dll | Cette fonction permet de demander un nom de fichier long ou demande le nom complet de chemin et nom de fichier pour un fichier exécutable contenu dans le module spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetModuleHandleA | HMODULE GetModuleHandleA( LPCTSTR lpModuleName ); | kernel32.dll | Cette fonction permet de retourner l'identificateur Handle du module spécifié si le fichier est situé dans l'espace d'adresse d'un processus appelant.
GetModuleHandleW | HMODULE GetModuleHandleW( LPCWSTR module ); | kernel32.dll | Cette fonction permet de retourner l'identificateur Handle du module spécifié si le fichier est situé dans l'espace d'adresse d'un processus appelant avec des paramètres de chaine de caractères étendue (Unicode).
GetNamedPipeHandleStateA | BOOL GetNamedPipeHandleStateA( HANDLE hNamedPipe, LPDWORD lpState, LPDWORD lpCurInstances, LPDWORD lpMaxCollectionCount, LPDWORD lpCollectDataTimeout, LPTSTR lpUserName, DWORD nMaxUserNameSize ); | kernel32.dll | Cette fonction permet de demander les informations d'état conçernant le nom du tuyau spécifié.
GetNamedPipeHandleStateW | BOOL GetNamedPipeHandleStateW( HANDLE hNamedPipe, PDWORD lpState, PDWORD lpCurInstances, PDWORD lpMaxCollectionCount, PDWORD lpCollectDataTimeout, LPWSTR lpUserName, DWORD nMaxUserNameSize ); | kernel32.dll | Cette fonction permet de demander les informations d'état conçernant le nom du tuyau spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetNamedPipeInfo | BOOL GetNamedPipeInfo( HANDLE hNamedPipe, LPDWORD lpFlags, LPDWORD lpOutBufferSize, LPDWORD lpInBufferSize, LPDWORD lpMaxInstances ); | kernel32.dll | Cette fonction permet de demander les informations conçernant le nom de tuyau spécifié.
GetNearestColor | COLORREF GetNearestColor(HDC hdc, COLORREF crColor); | gdi32.dll | Cette fonction permet de demander la couleur solide correspondant le mieux à la couleur logique.
GetNearestPaletteIndex | UINT GetNearestPaletteIndex(HPALETTE hpal, COLORREF crColor); | gdi32.dll | Cette fonction permet de demander l'index d'une entrée de palette logique correspondant le mieux à la valeur de couleur spécifié.
GetNextDlgGroupItem | HWND GetNextDlgGroupItem(HWND hDlg, HWND hCtl, BOOL bPrevious); | user32.dll | Cette fonction permet de rechercher le contrôle précédent ou suivant d'un groupe de contrôle dans une boite de dialogue.
GetNextDlgTabItem | HWND GetNextDlgTabItem(HWND hDlg, HWND hCtl, BOOL bPrevious); | user32.dll | Cette fonction permet de demander le Handle du premier contrôle d'un style WS_TABSTOP du contrôle spécifié.
GetNextWindow | HWND GetNextWindow(HWND hWnd, UINT wCmd); | user32.dll | Cette fonction permet de rechercher le Handle de la prochaine ou précédente fenêtre dans la liste du gestionnaire de fenêtre.
GetNumaAvailableMemoryNode | BOOL GetNumaAvailableMemoryNode(UCHAR Node,PULONGLONG AvailableBytes); | kernel32.dll | Cette fonction permet de demander la quantité de mémoire disponible dans le noeud spécifié.
GetNumberFormatA | int GetNumberFormatA( LCID Locale, DWORD dwFlags, LPCTSTR lpValue, CONST NUMBERFMT * lpFormat, LPTSTR lpNumberStr, int cchNumber ); | kernel32.dll | Cette fonction permet de transformer un nombre selon le format d'affichage spécifié.
GetNumberFormatW | int GetNumberFormatW( LCID lcid, DWORD dwFlags, LPCWSTR lpszValue, const NUMBERFMTW* lpFormat, LPWSTR lpNumberStr, int cchOut ); | kernel32.dll | Cette fonction permet de transformer un nombre selon le format d'affichage spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetNumberOfConsoleInputEvents | BOOL GetNumberOfConsoleInputEvents( HANDLE hConsoleInput, LPDWORD lpcNumberOfEvents ); | kernel32.dll | Cette fonction permet de demander le nombre d'enregistrement d'entrée non lue dans le tampon d'entrée de console.
GetNumberOfConsoleMouseButtons | BOOL GetNumberOfConsoleMouseButtons( LPDWORD lpNumberOfMouseButtons ); | kernel32.dll | Cette fonction permet de demander le nombre de boutons de la souris qu'utilise la console courante.
GetNumberOfEventLogRecords | BOOL GetNumberOfEventLogRecords( HANDLE hEventLog, PDWORD NumberOfRecords ); | advapi32.dll | Cette fonction permet de demander le nombre d'enregistrement de l'événement du journal de bord spécifié.
GetObjectA | int GetObjectA(HGDIOBJ hgdiobj, int cbBuffer, LPVOID lpvObject); | gdi32.dll | Cette fonction permet de remplir un tampon avec les informations définit dans la région spécifié.
GetObjectW | int GetObjectW(HGDIOBJ hgdiobj, int cbBuffer, LPVOID lpvObject); | gdi32.dll | Cette fonction permet de remplir un tampon avec les informations définit dans la région spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetObjectType | DWORD GetObjectType(HGDIOBJ h); | gdi32.dll | Cette fonction permet de demander l'identifiant de type d'objet spécifié.
GetOEMCP | UINT GetOEMCP(VOID); | kernel32.dll | Cette fonction permet de demander le code de page OEM du système d'exploitation.
GetOldestEventLogRecord | BOOL GetOldestEventLogRecord( HANDLE hEventLog, PDWORD OldestRecord ); | advapi32.dll | Cette fonction permet de demander le nombre d'enregistrement dans les anciens enregistrement du journal de bord spécifié.
GetOpenClipboardWindow | HWND GetOpenClipboardWindow(VOID); | user32.dll | Cette fonction permet de demander le Handle de la fenêtre actuellement ouverte dans le presse-papier.
GetOpenFileNameA | BOOL GetOpenFileNameA(LPOPENFILENAME lpofn); | comdlg32.dll | Cette fonction permet d'afficher une boite de dialogue offrant la possibilité de choisir un fichier.
GetOutlineTextMetricsA | UINT GetOutlineTextMetricsA(HDC hdc, UINT cbData, LPOUTLINETEXTMETRIC lpOTM); | gdi32.dll | Cette fonction permet de demander le métrique du texte pour la police de caractères TrueType.
GetOutlineTextMetricsW | UINT GetOutlineTextMetricsW(HDC hdc, UINT cbData, LPOUTLINETEXTMETRICW lpOTM); | gdi32.dll | Cette fonction permet de demander le métrique du texte pour la police de caractères TrueType avec des paramètres de chaine de caractères étendues (Unicode).
GetOverlappedResult | BOOL GetOverlappedResult( HANDLE hFile, LPOVERLAPPED lpOverlapped, LPDWORD lpNumberOfBytesTransferred, BOOL bWait ); | kernel32.dll | Cette fonction permet de retourner le résultat d'une opération de recouvrement sur un fichier, un tuyau ou un périphérique de communications spécifié
GetPaletteEntries | UINT GetPaletteEntries(HPALETTE hpal, UINT iStartIndex, UINT nEntries, LPPALETTEENTRY lppe); | gdi32.dll | Cette fonction permet de demander le rang des entrées d'une palette dans une palette logique.
GetParent | HWND GetParent(HWND hWnd); | user32.dll | Cette fonction permet de demander le Handle de la fenêtre parent spécifié.
GetPath | int GetPath(HDC hdc, LPPOINT lpPoints, LPBYTE lpTypes, int nSize); | gdi32.dll | Cette fonction permet de demander les coordonnées définit par des points de fin de lignes et une courbe de point de contrôle trouvé dans un chemin étant sélectionné dans un périphérique de contexte spécifié.
GetPixel | COLORREF GetPixel(HDC hdc,int nXPos,int nYPos); | gdi32.dll | Cette fonction permet de demander la couleur sous format RVB (RGB) d'un pixel affiché à l'écran.
GetPixelFormat | int GetPixelFormat(HDC hdc); | gdi32.dll | Cette fonction permet de demander l'index du format de pixel actuellement sélectionné dans le périphérique de contexte spécifié.
GetPolyFillMode | int GetPolyFillMode(HDC hdc); | gdi32.dll | Cette fonction permet de demander le mode de remplissage d'un polygone.
GetPrinterA | BOOL GetPrinterA( HANDLE hPrinter, DWORD Level, LPBYTE pPrinter, DWORD cbBuf, LPDWORD pcbNeeded ); | winspool.drv | Cette fonction permet de demander des informations sur une imprimante.
GetPriorityClass | DWORD GetPriorityClass( HANDLE hProcess ); | kernel32.dll | Cette fonction permet de retourner la priorité d'une classe pour un processus spécifié.
GetPriorityClipboardFormat | int GetPriorityClipboardFormat(UINT * paFormatPriorityList, int cFormats); | user32.dll | Cette fonction permet de demander le format du premier presse-papier dans la liste de données existantes du presse-papier.
GetPrivateObjectSecurity | BOOL GetPrivateObjectSecurity( PSECURITY_DESCRIPTOR ObjectDescriptor, SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR ResultantDescriptor, DWORD DescriptorLength, PDWORD ReturnLength ); | advapi32.dll | Cette fonction permet de demander des informations de descripteur de sécurité à un serveur d'objet protégé.
GetPrivateProfileIntA | UINT GetPrivateProfileIntA( LPCTSTR lpAppName, LPCTSTR lpKeyName, INT nDefault, LPCTSTR lpFileName ); | kernel32.dll | Cette fonction permet de demander un entier associé avec une clef dans une section spécifié d'un fichier initialisé.
GetPrivateProfileIntW | UINT GetPrivateProfileIntW( LPCWSTR lpAppName, LPCWSTR lpKeyName, INT nDefault, LPCWSTR lpFileName ); | kernel32.dll | Cette fonction permet de demander un entier associé avec une clef dans une section spécifié d'un fichier initialisé avec des paramètres de chaine de caractères étendue (Unicode).
GetPrivateProfileSectionA | DWORD GetPrivateProfileSectionA( LPCTSTR lpAppName, LPTSTR lpReturnedString, DWORD nSize, LPCTSTR lpFileName ); | kernel32.dll | Cette fonction permet de demander tous les valeurs et clefs pour la section initialisé spécifié.
GetPrivateProfileSectionW | DWORD GetPrivateProfileSectionW( LPCWSTR lpAppName, LPWSTR lpReturnedString, DWORD nSize, LPCWSTR lpFileName ); | kernel32.dll | Cette fonction permet de demander tous les valeurs et clefs pour la section initialisé spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetPrivateProfileSectionNamesA | DWORD GetPrivateProfileSectionNamesA( LPTSTR lpszReturnBuffer, DWORD nSize, LPCTSTR lpFileName ); | kernel32.dll | Cette fonction permet de demander les noms de toutes les sections dans un fichier initialisé.
GetPrivateProfileSectionNamesW | DWORD GetPrivateProfileSectionNamesW( LPWSTR lpszReturnBuffer, DWORD nSize, LPCWSTR lpFileName ); | kernel32.dll | Cette fonction permet de demander les noms de toutes les sections dans un fichier initialisé avec des paramètres de chaine de caractères étendue (Unicode).
GetPrivateProfileStringA | DWORD GetPrivateProfileStringA( LPCTSTR lpAppName, LPCTSTR lpKeyName, LPCTSTR lpDefault, LPTSTR lpReturnedString, DWORD nSize, LPCTSTR lpFileName ); | kernel32.dll | Cette fonction permet de demander une chaine de caractères de la section spécifié dans un fichier initialisé.
GetPrivateProfileStringW | DWORD GetPrivateProfileStringW( LPCWSTR lpAppName, LPCWSTR lpKeyName, LPCWSTR lpDefault, LPWSTR lpReturnedString, DWORD nSize, LPCWSTR lpFileName ); | kernel32.dll | Cette fonction permet de demander une chaine de caractères de la section spécifié dans un fichier initialisé avec des paramètres de chaine de caractères étendue (Unicode).
GetProcAddress | FARPROC GetProcAddress( HMODULE hModule, LPCSTR lpProcName ); | kernel32.dll | Cette fonction permet de demander l'adresse d'une fonction d'exportation de bibliothèque de liens dynamique (DLL).
GetProcessAffinityMask | BOOL GetProcessAffinityMask( HANDLE hProcess, LPDWORD lpProcessAffinityMask, LPDWORD lpSystemAffinityMask ); | kernel32.dll | Cette fonction permet de demander un masque de correspondance de processus spécifié avec le système.
GetProcessHeap | HANDLE GetProcessHeap(VOID); | kernel32.dll | Cette fonction permet de demander un identificateur Handle pour la mémoire de tas d'un processus appelant.
GetProcessHeaps | DWORD GetProcessHeaps( DWORD NumberOfHeaps, PHANDLE ProcessHeaps ); | kernel32.dll | Cette fonction permet de demander un identificateur Handle pour tous les mémoires de tas valides pour un processus appelant.
GetProcessPriorityBoost | BOOL GetProcessPriorityBoost( HANDLE hProcess, PBOOL pDisablePriorityBoost ); | kernel32.dll | Cette fonction permet de demander l'état de la priorité de contrôle d'amplificateur d'un processus spécifié.
GetProcessShutdownParameters | BOOL GetProcessShutdownParameters( LPDWORD lpdwLevel, LPDWORD lpdwFlags ); | kernel32.dll | Cette fonction permet de demander les paramètres de fermetures et d'éteindre le système d'exploitation pour un le processus appelant courant.
GetProcessTimes | BOOL GetProcessTimes( HANDLE hProcess, LPFILETIME lpCreationTime, LPFILETIME lpExitTime, LPFILETIME lpKernelTime, LPFILETIME lpUserTime ); | kernel32.dll | Cette fonction permet de demander les informations d'horloge pour le processus spécifié.
GetProcessVersion | DWORD GetProcessVersion( DWORD ProcessId ); | kernel32.dll | Cette fonction permet de demander la version majeur et mineur pour un processus spécifié en exécution.
GetProcessWindowStation | HWINSTA GetProcessWindowStation(VOID); | user32.dll | Cette fonction permet de demander le Handle de la fenêtre de station associé avec le processus appelant.
GetProcessWorkingSetSize | BOOL GetProcessWorkingSetSize( HANDLE hProcess, LPDWORD lpMinimumWorkingSetSize, LPDWORD lpMaximumWorkingSetSize ); | kernel32.dll | Cette fonction permet de demander la taille de l'espace de travail minimum et maximum pour le processus spécifié.
GetProfileIntA | UINT GetProfileIntA( LPCTSTR lpAppName, LPCTSTR lpKeyName, INT nDefault ); | kernel32.dll | Cette fonction permet de demander un entier pour le nom de clef spécifié dans une section spécifié dans un fichier «WIN.INI».
GetProfileIntW | UINT GetProfileIntW( LPCWSTR lpAppName, LPCWSTR lpKeyName, INT nDefault ); | kernel32.dll | Cette fonction permet de demander un entier pour le nom de clef spécifié dans une section spécifié dans un fichier «WIN.INI» avec des paramètres de chaine de caractères étendue (Unicode).
GetProfileSectionA | DWORD GetProfileSectionA( LPCTSTR lpAppName, LPTSTR lpReturnedString, DWORD nSize ); | kernel32.dll | Cette fonction permet de demander tous les valeurs et clefs pour la section spécifié dans un fichier «WIN.INI».
GetProfileSectionW | DWORD GetProfileSectionW( LPCWSTR lpAppName, LPWSTR lpReturnedString, DWORD nSize ); | kernel32.dll | Cette fonction permet de demander tous les valeurs et clefs pour la section spécifié dans un fichier «WIN.INI» avec des paramètres de chaine de caractères étendue (Unicode).
GetProfileStringA | DWORD GetProfileStringA( LPCTSTR lpAppName, LPCTSTR lpKeyName, LPCTSTR lpDefault, LPTSTR lpReturnedString, DWORD nSize ); | kernel32.dll | Cette fonction permet de demander une chaine de caractères associé avec la clef spécifié dans une section du fichier «WIN.INI».
GetProfileStringW | DWORD GetProfileStringW( LPCWSTR lpAppName, LPCWSTR lpKeyName, LPCWSTR lpDefault, LPWSTR lpReturnedString, DWORD nSize ); | kernel32.dll | Cette fonction permet de demander une chaine de caractères associé avec la clef spécifié dans une section du fichier «WIN.INI» avec des paramètres de chaine de caractères étendue (Unicode).
GetPropA | HANDLE GetPropA(HWND hWnd, LPCTSTR lpString); | user32.dll | Cette fonction permet de demander une données Handle d'une liste de propriété d'une fenêtre.
GetPropW | HANDLE GetPropW(HWND hWnd, LPCWSTR lpString); | user32.dll | Cette fonction permet de demander une données Handle d'une liste de propriété d'une fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
GetQueuedCompletionStatus | BOOL GetQueuedCompletionStatus( HANDLE CompletionPort, LPDWORD lpNumberOfBytesTransferred, LPDWORD lpCompletionKey, LPOVERLAPPED * lpOverlapped, DWORD dwMilliseconds ); | kernel32.dll | Cette fonction permet d'essayer de compléter la file d'attente d'un paquet d'entrée/sortie spécifié pour un port d'entrée/sortie.
GetQueueStatus | DWORD GetQueueStatus(UINT flags); | user32.dll | Cette fonction permet de retourner une valeur indiquant le type de message dans la file d'attente.
GetRasterizerCaps | BOOL GetRasterizerCaps(LPRASTERIZER_STATUS lprs, UINT cb); | gdi32.dll | Cette fonction permet de retourner les drapeaux indiquant si la police de caractères TrueType est installé dans le système.
GetRegionData | DWORD GetRegionData(HRGN hRgn, DWORD dwCount, LPRGNDATA lpRgnData); | gdi32.dll | Cette fonction permet de remplir le tampons spécifié avec une région de données décrites.
GetRgnBox | int GetRgnBox(HRGN hrgn, LPRECT lprc); | gdi32.dll | Cette fonction permet de demander les coordonnées des limites rectangulaires d'une région spécifié.
GetROP2 | int GetROP2(HDC hdc); | gdi32.dll | Cette fonction permet de demander le mode dessinage courant.
GetScrollInfo | BOOL GetScrollInfo(HWND hwnd, int fnBar, LPSCROLLINFO lpsi); | user32.dll | Cette fonction permet de demander les paramètres d'une barre de défilement, en incluant les positions de défilement minimum et maximum, la taille de la page et la position de la boite de défilement.
GetScrollPos | int GetScrollPos(HWND hWnd, int nBar); | user32.dll | Cette fonction permet de demander la position courante de la boite de défilement d'une barre de défilement.
GetScrollRange | BOOL GetScrollRange(HWND hWnd, int nBar, LPINT lpMinPos, LPINT lpMaxPos); | user32.dll | Cette fonction permet de demander la position minimum et maximum de la barre de défilement spécifié.
GetSecurityDescriptorControl | BOOL GetSecurityDescriptorControl( PSECURITY_DESCRIPTOR pSecurityDescriptor, PSECURITY_DESCRIPTOR_CONTROL pControl, LPDWORD lpdwRevision ); | advapi32.dll | Cette fonction permet de demander le contrôle de descripteur de sécurité et les informations de révision.
GetSecurityDescriptorDacl | BOOL GetSecurityDescriptorDacl( PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbDaclPresent, PACL *pDacl, LPBOOL lpbDaclDefaulted ); | advapi32.dll | Cette fonction permet de demander un pointeur sur une liste de contrôle d'accès (ACL) discrétionnaire dans un descripteur de sécurité spécifié.
GetSecurityDescriptorGroup | BOOL GetSecurityDescriptorGroup( PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID * pGroup, LPBOOL lpbGroupDefaulted ); | advapi32.dll | Cette fonction permet de demander les informations de groupe primaire d'un descripteur de sécurité.
GetSecurityDescriptorLength | DWORD GetSecurityDescriptorLength( PSECURITY_DESCRIPTOR pSecurityDescriptor ); | advapi32.dll | Cette fonction permet de retourner la longueur, en octets, d'une structure valide de descripteur de sécurité.
GetSecurityDescriptorOwner | BOOL GetSecurityDescriptorOwner( PSECURITY_DESCRIPTOR pSecurityDescriptor, PSID * pOwner, LPBOOL lpbOwnerDefaulted ); | advapi32.dll | Cette fonction permet de demander les informations du propriétaire d'un descripteur de sécurité
GetSecurityDescriptorSacl | BOOL GetSecurityDescriptorSacl( PSECURITY_DESCRIPTOR pSecurityDescriptor, LPBOOL lpbSaclPresent, PACL *pSacl, LPBOOL lpbSaclDefaulted ); | advapi32.dll | Cette fonction permet de demander un pointeur sur la liste de contrôle d'accès système (ACL) dans un descripteur de sécurité spécifié.
GetShortPathNameA | DWORD GetShortPathNameA( LPCTSTR lpszLongPath, LPTSTR lpszShortPath, DWORD cchBuffer ); | kernel32.dll | Cette fonction permet de demander, à partir d'un nom long, le nom en format DOS (8 caractères de nom et 3 caractères d'extension) d'un fichier.
GetShortPathNameW | DWORD GetShortPathNameW( LPCWSTR lpszLongPath, LPWSTR lpszShortPath, DWORD cchBuffer ); | kernel32.dll | Cette fonction permet de demander, à partir d'un nom long, le nom en format DOS (8 caractères de nom et 3 caractères d'extension) d'un fichier avec des paramètres de chaine de caractères étendue (Unicode).
GetSidIdentifierAuthority | PSID_IDENTIFIER_AUTHORITY GetSidIdentifierAuthority( PSID pSid ); | advapi32.dll | Cette fonction permet de retourner l'adresse de la structure d'un «SID_IDENTIFIER_AUTHORITY» dans l'identificateur de sécurité (SID) spécifié.
GetSidLengthRequired | DWORD GetSidLengthRequired( UCHAR nSubAuthorityCount ); | advapi32.dll | Cette fonction permet de retourner la longueur, en octets, d'un tampon requis pour l'entreposage d'une structure SID avec le nombre de sous-autorisation spécifié.
GetSidSubAuthority | PDWORD GetSidSubAuthority( PSID pSid, DWORD nSubAuthority ); | advapi32.dll | Cette fonction permet de retourner l'adresse d'une sous-autorité spécifié d'une structure SID.
GetSidSubAuthorityCount | PUCHAR GetSidSubAuthorityCount( PSID pSid ); | advapi32.dll | Cette fonction permet de retourner l'adresse d'un champs d'une structure SID contenant le compteur de sous-autorité.
GetStartupInfoA | VOID GetStartupInfoA( LPSTARTUPINFO lpStartupInfo ); | kernel32.dll | Cette fonction permet de demander le contenu de la structure «STARTUPINFO» spécifié quand un appel de processus est créé.
GetStartupInfoW | VOID GetStartupInfoW( LPSTARTUPINFOW lpStartupInfo ); | kernel32.dll | Cette fonction permet de demander le contenu de la structure «STARTUPINFO» spécifié quand un appel de processus est créé avec des paramètres de chaine de caractères étendue (Unicode).
GetStdHandle | HANDLE GetStdHandle(DWORD nStdHandle); | kernel32.dll | Cette fonction permet de demander le Handle d'une entrée ou sortie standard.
GetStockObject | HGDIOBJ GetStockObject(int fnObject); | gdi32.dll | Cette fonction permet de demander le Handle d'un des outils de stylo, brosse, police de caractères,... des objets de Windows
GetStretchBltMode | int GetStretchBltMode(HDC hdc); | gdi32.dll | Cette fonction permet de demander le mode d'étirement du Bitmap courant.
GetStringTypeA | BOOL GetStringTypeA( LCID Locale, DWORD dwInfoType, LPCSTR lpSrcStr, int cchSrc, LPWORD lpCharType ); | kernel32.dll | Cette fonction permet de retourner des informations type de caractère pour la chaine de caractères spécifié.
GetStringTypeExA | BOOL GetStringTypeExA( LCID Locale, DWORD dwInfoType, LPCTSTR lpSrcStr, int cchSrc, LPWORD lpCharType ); | kernel32.dll | Cette fonction permet de retourner des informations type de caractère pour la chaine de caractères spécifié en Win32.
GetStringTypeExW | BOOL GetStringTypeExW( LCID locale, DWORD type, LPCWSTR src, INT count, LPWORD chartype ); | kernel32.dll | Cette fonction permet de retourner des informations type de caractère pour la chaine de caractères spécifié en Win32 avec des paramètres de chaine de caractères étendue (Unicode).
GetStringTypeW | BOOL GetStringTypeW( DWORD type, LPCWSTR src, INT count, LPWORD chartype ); | kernel32.dll | Cette fonction permet de retourner des informations type de caractère pour la chaine de caractères spécifié avec des paramètres de chaine de caractères étendue (Unicode).
GetSubMenu | HMENU GetSubMenu(HMENU hMenu, int nPos); | user32.dll | Cette fonction permet de demander le Handle du menu contextuel.
GetSysColor | DWORD GetSysColor(int nIndex); | user32.dll | Cette fonction permet de demander la couleur d'un des objets affichés du système d'exploitations de Windows.
GetSysColorBrush | HBRUSH GetSysColorBrush(int nIndex); | user32.dll | Cette fonction permet de demander le Handle identifiant la brosse logique correspondant à l'index de couleur spécifié.
GetSystemDefaultLCID | LCID GetSystemDefaultLCID(VOID); | kernel32.dll | Cette fonction permet de demander l'identificateur locale du système par défaut.
GetSystemDefaultLangID | LANGID GetSystemDefaultLangID(VOID); | kernel32.dll | Cette fonction permet de demander l'identificateur de langage système par défaut.
GetSystemDirectoryA | UINT GetSystemDirectoryA(LPTSTR lpBuffer,UINT uSize); | kernel32.dll | Cette fonction permet de demander le répertoire dans lequel les fichiers systèmes du système d'exploitations de Windows sont situés.
GetSystemDirectoryW | UINT GetSystemDirectoryW(LPWSTR lpBuffer, UINT uSize); | kernel32.dll | Cette fonction permet de demander le répertoire dans lequel les fichiers systèmes du système d'exploitations de Windows sont situés avec des paramètres de chaine de caractères étendue (Unicode).
GetSystemInfo | VOID GetSystemInfo(LPSYSTEM_INFO lpSystemInfo); | kernel32.dll | Cette fonction permet de demander divers informations à propos du système courant et du microprocesseur.
GetSystemMenu | HMENU GetSystemMenu(HWND hWnd,BOOL bRevert); | user32.dll | Cette fonction permet de demander le Handle du menu système d'une fenêtre d'application.
GetSystemMetrics | int GetSystemMetrics(int nIndex); | user32.dll | Cette fonction permet de demander le type de système métrique ou de ses paramètres utilisés.
GetSystemPaletteEntries | UINT GetSystemPaletteEntries(HDC hdc, UINT iStartIndex, UINT nEntries, LPPALETTEENTRY lppe); | gdi32.dll | Cette fonction permet de demander un rang dans les entrées de palette de la palette système.
GetSystemPaletteUse | UINT GetSystemPaletteUse(HDC hdc); | gdi32.dll | Cette fonction permet de demander si une application est accessible à une palette d'entrée système.
GetSystemPowerStatus | BOOL GetSystemPowerStatus(LPSYSTEM_POWER_STATUS lpSystemPowerStatus); | kernel32.dll | Cette fonction permet de demander l'état de l'alimentation en énergie de l'ordinateur.
GetSystemTime | VOID GetSystemTime(LPSYSTEMTIME lpSystemTime); | kernel32.dll | Cette fonction permet de demander le temps (date et heure) courant du système d'exploitation. Le temps du système d'exploitation est une expression UTC (Coordinated Universal Time).
GetSystemTimeAsFileTime | VOID GetSystemTimeAsFileTime(LPFILETIME lpSystemTimeAsFileTime); | kernel32.dll | Cette fonction permet de demander la date et l'heure du système d'exploitation.
GetSystemTimeAdjustment | BOOL GetSystemTimeAdjustment( PDWORD lpTimeAdjustment, PDWORD lpTimeIncrement, PBOOL lpTimeAdjustmentDisabled ); | kernel32.dll | Cette fonction permet de demander si le système applique périodiquement un ajustement du temps après chaque tic d'horloge.
GetTabbedTextExtentA | DWORD GetTabbedTextExtentA(HDC hDC, LPCTSTR lpString, int nCount, int nTabPositions, LPINT lpnTabStopPositions); | user32.dll | Cette fonction permet de calculer la largeur et la hauteur d'une chaine de caractères.
GetTabbedTextExtentW | DWORD GetTabbedTextExtentW(HDC hDC, LPCWSTR lpString, int nCount, int nTabPositions, LPINT lpnTabStopPositions); | user32.dll | Cette fonction permet de calculer la largeur et la hauteur d'une chaine de caractères avec des paramètres de chaine de caractères étendues (Unicode).
GetTapeParameters | DWORD GetTapeParameters( HANDLE hDevice, DWORD dwOperation, LPDWORD lpdwSize, LPVOID lpTapeInformation ); | kernel32.dll | Cette fonction permet de demander des informations descriptives sur l'unité de bande magnétique de copie de sauvegarde.
GetTapePosition | DWORD GetTapePosition( HANDLE hDevice, DWORD dwPositionType, LPDWORD lpdwPartition, LPDWORD lpdwOffsetLow, LPDWORD lpdwOffsetHigh ); | kernel32.dll | Cette fonction permet de demander l'adresse courante logique ou en bloc absolue sur une bande magnétique de copie de sauvegarde.
GetTapeStatus | DWORD GetTapeStatus(HANDLE hDevice); | kernel32.dll | Cette fonction permet de demander si la bande magnétique de copie de sauvegarde est prête à recevoir une commande de processus.
GetTcpStatistics | DWORD GetTcpStatistics(PMIB_TCPSTATS pStats); | iphlpapi.dll | Cette fonction permet de demander les informations de statistique sur le TCP de l'ordinateur.
GetTempFileNameA | UINT GetTempFileNameA(LPCTSTR lpPathName, LPCTSTR lpPrefixString, UINT uUnique, LPTSTR lpTempFileName); | kernel32.dll | Cette fonction permet de demander un nom de fichier créer temporairement.
GetTempFileNameW | UINT GetTempFileNameW( LPCWSTR lpPathName, LPCWSTR lpPrefixString, UINT unique, LPWSTR lpTempFileName ); | kernel32.dll | Cette fonction permet de demander un nom de fichier créer temporairement avec des paramètres de chaine de caractères étendue (Unicode).
GetTempPathA | DWORD GetTempPathA(DWORD nBufferLength,LPTSTR lpBuffer); | kernel32.dll | Cette fonction permet de demander le répertoire par défaut des fichiers temporairement.
GetTempPathW | DWORD GetTempPathW(DWORD nBufferLength,LPWSTR lpBuffer); | kernel32.dll | Cette fonction permet de demander le répertoire par défaut des fichiers temporairement avec des paramètres de chaine de caractères étendue (Unicode).
GetTextAlign | UINT GetTextAlign(HDC hdc); | gdi32.dll | Cette fonction permet de demander l'état des drapeaux d'alignement de texte pour un périphérique de contexte spécifié.
GetTextCharacterExtra | int GetTextCharacterExtra(HDC hdc); | gdi32.dll | Cette fonction permet de demander l'ajustement courant pour la quantité d'espacement entre les caractères.
GetTextCharset | UINT GetTextCharsetInfo(HDC hdc, LPFONTSIGNATURE * lpSig, DWORD dwFlags); | gdi32.dll | Cette fonction permet de demander les informations à propos d'un ensemble de caractères de la police de caractères actuellement sélectionné.
GetTextCharsetInfo | UINT GetTextCharsetInfo(HDC hdc, LPFONTSIGNATURE * lpSig, DWORD dwFlags); | gdi32.dll | Cette fonction permet de demander les informations supplémentaires à propos de l'ensemble de caractères de la police de caractères actuellement sélectionné.
GetTextColor | COLORREF GetTextColor(HDC hdc); | gdi32.dll | Cette fonction permet de demander la couleur de texte courante.
GetTextExtentExPointA | BOOL GetTextExtentExPointA(HDC hdc, LPCTSTR lpszStr, int cchString, int nMaxExtent, LPINT lpnFit, LPINT alpDx, LPSIZE lpSize); | gdi32.dll | Cette fonction permet de demander le nombre de caractères dans la chaine de caractères correspondant à l'espace spécifié et remplit un tableau avec le texte étendue pour chacun de ses caractères.
GetTextExtentExPointW | BOOL GetTextExtentExPointW(HDC hdc, LPCWSTR lpszStr, int cchString, int nMaxExtent, LPINT lpnFit, LPINT alpDx, LPSIZE lpSize); | gdi32.dll | Cette fonction permet de demander le nombre de caractères dans la chaine de caractères correspondant à l'espace spécifié et remplit un tableau avec le texte étendue pour chacun de ses caractères avec des paramètres de chaine de caractères étendues (Unicode).
GetTextExtentPoint32A | BOOL GetTextExtentPoint32A(HDC hdc, LPCTSTR lpString, int cbString, LPSIZE lpSize); | gdi32.dll | Cette fonction permet de calculer la largeur et la hauteur de la chaine de caractères de texte spécifié.
GetTextExtentPoint32W | BOOL GetTextExtentPoint32W(HDC hdc, LPCWSTR str, INT count, LPSIZE size); | gdi32.dll | Cette fonction permet de calculer la largeur et la hauteur de la chaine de caractères de texte spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetTextExtentPointA | BOOL GetTextExtentPointA(HDC hdc, LPCTSTR lpString, int cbString, LPSIZE lpSize); | gdi32.dll | Cette fonction permet de calculer la largeur et la hauteur d'un chaine de caractères de texte spécifié dans un contexte de compatibilité 16 bits.
GetTextExtentPointW | BOOL GetTextExtentPointW(HDC hdc, LPCWSTR lpString, int cbString, LPSIZE lpSize); | gdi32.dll | Cette fonction permet de calculer la largeur et la hauteur d'un chaine de caractères de texte spécifié dans un contexte de compatibilité 16 bits avec des paramètres de chaine de caractères étendues (Unicode).
GetTextFaceA | int GetTextFaceA(HDC hdc, int nCount, LPTSTR lpFaceName); | gdi32.dll | Cette fonction permet de demander le nom de type de police de caractères étant sélectionné dans le périphérique de contexte spécifié.
GetTextFaceW | int GetTextFaceW(HDC hdc, int nCount, LPWSTR lpFaceName); | gdi32.dll | Cette fonction permet de demander le nom de type de police de caractères étant sélectionné dans le périphérique de contexte spécifié avec des paramètres de chaine de caractères étendues (Unicode).
GetTextMetricsA | BOOL GetTextMetricsA(HDC hdc, LPTEXTMETRIC lptm); | gdi32.dll | Cette fonction permet de demander les informations métriques d'une police de caractères courante.
GetTextMetricsW | BOOL GetTextMetricsW(HDC hdc, LPTEXTMETRICW lptm); | gdi32.dll | Cette fonction permet de demander les informations métriques d'une police de caractères courante avec des paramètres de chaine de caractères étendues (Unicode).
GetThreadContext | BOOL GetThreadContext( HANDLE hThread, LPCONTEXT lpContext ); | kernel32.dll | Cette fonction permet de demander le contexte d'un processus léger spécifié.
GetThreadDesktop | HDESK GetThreadDesktop(DWORD dwThreadId); | user32.dll | Cette fonction permet de demander le Handle du bureau associé avec le processus spécifié.
GetThreadLocale | LCID GetThreadLocale(VOID); | kernel32.dll | Cette fonction permet de demander l'identificateur local d'un processus.
GetThreadPriority | int GetThreadPriority(HANDLE hThread); | kernel32.dll | Cette fonction permet de retourner la valeur de priorité du processus léger spécifié.
GetThreadPriorityBoost | BOOL GetThreadPriorityBoost(HANDLE hthread, PBOOL pstate); | kernel32.dll | Cette fonction permet de retourner la priorité de lancement d'un processus léger.
GetThreadSelectorEntry | BOOL GetThreadSelectorEntry( HANDLE hThread, DWORD dwSelector, LPLDT_ENTRY lpSelectorEntry ); | kernel32.dll | Cette fonction permet de retourner l'entrée de descripteur de table pour le sélecteur et le processus léger spécifié.
GetThreadTimes | BOOL GetThreadTimes( HANDLE hThread, LPFILETIME lpCreationTime, LPFILETIME lpExitTime, LPFILETIME lpKernelTime, LPFILETIME lpUserTime ); | kernel32.dll | Cette fonction permet de demander les informations de temps à propos du processus léger spécifié.
GetTickCount | DWORD GetTickCount(VOID); | kernel32.dll | Cette fonction permet de demander le nombre de milliseconde écoulé depuis le démarrage de Windows.
GetTimeFormatA | int GetTimeFormatA( LCID Locale, DWORD dwFlags, CONST SYSTEMTIME * lpTime, LPCTSTR lpFormat, LPTSTR lpTimeStr, int cchTime ); | kernel32.dll | Cette fonction permet de retourner la chaine de caractères du format du temps localement.
GetTimeFormatW | int GetTimeFormatW( LCID lcid, DWORD dwFlags, const SYSTEMTIME* lpTime, LPCWSTR lpFormat, LPWSTR lpTimeStr, int cchOut ); | kernel32.dll | Cette fonction permet de retourner la chaine de caractères du format du temps localement avec des paramètres de chaine de caractères étendue (Unicode).
GetTimeZoneInformation | DWORD GetTimeZoneInformation(LPTIME_ZONE_INFORMATION lpTimeZoneInformation); | kernel32.dll | Cette fonction permet de demander les informations de la zone horaire courante du système d'exploitation Windows.
GetTokenInformation | BOOL GetTokenInformation( HANDLE TokenHandle, TOKEN_INFORMATION_CLASS TokenInformationClass, LPVOID TokenInformation, DWORD TokenInformationLength, PDWORD ReturnLength ); | advapi32.dll | Cette fonction permet de demander le type d'information associé à un accès de jeton.
GetTopWindow | HWND GetTopWindow(HWND hWnd); | user32.dll | Cette fonction permet de demander le Handle du plus haut niveau de fenêtre enfant appartenant à la fenêtre parent spécifié.
GetUdpStatistics | DWORD GetUdpStatistics(PMIB_UDPSTATS pStats); | iphlpapi.dll | Cette fonction permet de demander les informations de statistique sur le UDP de l'ordinateur.
GetUpdateRect | BOOL GetUpdateRect(HWND hWnd, LPRECT lpRect, BOOL bErase); | user32.dll | Cette fonction permet de demander les coordonnées d'un petit rectangle complètement enfermé dans une région mise à jour par la fenêtre donnée.
GetUpdateRgn | int GetUpdateRgn(HWND hWnd, HRGN hRgn, BOOL bErase); | user32.dll | Cette fonction permet de demander la région mise à jour dans la fenêtre.
GetUserDefaultLCID | LCID GetUserDefaultLCID(VOID); | kernel32.dll | Cette fonction permet de demander l'identificateur local de l'utilisateur par défaut.
GetUserNameA | BOOL GetUserNameA(LPTSTR lpBuffer, LPDWORD nSize); | advapi32.dll | Cette fonction permet de demander le nom de l'utilisateur courant actuellement sous Windows.
GetUserNameW | BOOL GetUserNameW( LPWSTR lpszName, LPDWORD lpSize ); | advapi32.dll | Cette fonction permet de demander le nom de l'utilisateur courant actuellement sous le système d'exploitation Windows avec des paramètres de chaine de caractères étendue (Unicode).
GetUserNameExA | BOOLEAN GetUserNameExA( EXTENDED_NAME_FORMAT NameFormat, LPTSTR lpNameBuffer, PULONG nSize ); | secur32.dll | Cette fonction permet de retourner le nom de l'utilisateur dans le format EXTENDED_NAME_FORMAT.
GetUserObjectInformationA | BOOL GetUserObjectInformationA(HANDLE hObj, int nIndex, PVOID pvInfo, DWORD nLength,LPDWORD lpnLengthNeeded); | user32.dll | Cette fonction permet de demander les informations à propos d'une station de fenêtre ou d'un objet de bureau.
GetUserObjectInformationW | BOOL GetUserObjectInformationW(HANDLE hObj, int nIndex, PVOID pvInfo, DWORD nLength,LPDWORD lpnLengthNeeded); | user32.dll | Cette fonction permet de demander les informations à propos d'une station de fenêtre ou d'un objet de bureau avec des paramètres de chaine de caractères étendues (Unicode).
GetUserObjectSecurity | BOOL GetUserObjectSecurity(HANDLE hObj, PSECURITY_INFORMATION pSIRequested, PSECURITY_DESCRIPTOR pSID, DWORD nLength, LPDWORD lpnLengthNeeded); | user32.dll | Cette fonction permet de demander les informations de sécurité pour l'objet utilisateur spécifié.
GetVersion | DWORD GetVersion(VOID); | kernel32.dll | Cette fonction permet de demander le numéro de version courante du système d'exploitation Windows et les informations à propos de la plateforme du système d'exploitation.
GetVersionExA | BOOL GetVersionExA(LPOSVERSIONINFO lpVersionInformation); | kernel32.dll | Cette fonction permet de demander la version du système d'exploitation Windows.
GetVersionExW | BOOL GetVersionExW(LPOSVERSIONINFOW lpVersionInformation); | kernel32.dll | Cette fonction permet de demander la version du système d'exploitation Windows avec des paramètres de chaine de caractères étendue (Unicode).
GetViewportExtEx | BOOL GetViewportExtEx(HDC hdc, LPSIZE lpSize); | gdi32.dll | Cette fonction permet de demander les extensions X et Y d'un point de vue d'un périphérique de contexte.
GetViewportOrgEx | BOOL GetViewportOrgEx(HDC hdc, LPPOINT lpPoint); | gdi32.dll | Cette fonction permet de demander les coordonnées X et Y d'origine d'une association de point vue avec un périphérique de contexte spécifié.
GetVolumeInformationA | BOOL GetVolumeInformationA( LPCTSTR lpRootPathName, LPTSTR lpVolumeNameBuffer, DWORD nVolumeNameSize, LPDWORD lpVolumeSerialNumber, LPDWORD lpMaximumComponentLength, LPDWORD lpFileSystemFlags, LPTSTR lpFileSystemNameBuffer, DWORD nFileSystemNameSize ); | kernel32.dll | Cette fonction permet de demander les informations d'entête d'une unité disque.
GetVolumeInformationW | BOOL GetVolumeInformationW( LPCWSTR lpRootPathName, LPWSTR lpVolumeNameBuffer, DWORD nVolumeNameSize, PDWORD lpVolumeSerialNumber, PDWORD lpMaximumComponentLength, PDWORD lpFileSystemFlags, LPWSTR lpFileSystemNameBuffer, DWORD nFileSystemNameSize ); | kernel32.dll | Cette fonction permet de demander les informations d'entête d'une unité disque avec des paramètres de chaine de caractères étendue (Unicode).
GetWindow | HWND GetWindow(HWND hWnd,UINT uCmd); | user32.dll | Cette fonction permet de demander le Handle d'une fenêtre d'application.
GetWindowContextHelpId | DWORD GetWindowContextHelpId(HWND hwnd); | user32.dll | Cette fonction permet de demander l'identificateur de contexte, si possible, associé avec la fenêtre spécifié.
GetWindowDC | HDC GetWindowDC(HWND hWnd); | user32.dll | Cette fonction permet de demander un périphérique de contexte pour la fenêtre, la barre de titre, les menus et la barre de défilement.
GetWindowLongA | LONG GetWindowLongA(HWND hWnd,int nIndex); | user32.dll | Cette fonction permet de demander, sous forme d'une valeur de 32 bits, une des propriétés d'une fenêtre d'application.
GetWindowLongW | LONG GetWindowLongW(HWND hWnd, int nIndex); | user32.dll | Cette fonction permet de demander, sous forme d'une valeur de 32 bits, une des propriétés d'une fenêtre d'application avec des paramètres de chaine de caractères étendues (Unicode).
GetWindowPlacement | BOOL GetWindowPlacement(HWND hWnd, WINDOWPLACEMENT * lpwndpl); | user32.dll | Cette fonction permet de demander l'état d'affichage et de restituer, minimiser et maximiser les positions d'une fenêtre.
GetWindowRect | BOOL GetWindowRect(HWND hWnd,LPRECT lpRect); | user32.dll | Cette fonction permet de demander les coordonnées et la taille d'une fenêtre d'application.
GetWindowRgn | int GetWindowRgn(HWND hWnd, HRGN hRgn); | user32.dll | Cette fonction permet de demander une copie d'une région de fenêtre dans une fenêtre.
GetWindowsDirectoryA | UINT GetWindowsDirectoryA(LPTSTR lpBuffer,UINT uSize); | kernel32.dll | Cette fonction permet de demander le répertoire dans lequel le système d'exploitation Windows est situés.
GetWindowsDirectoryW | UINT GetWindowsDirectoryW(LPWSTR lpBuffer,UINT uSize); | kernel32.dll | Cette fonction permet de demander le répertoire dans lequel le système d'exploitation Windows est situés avec des paramètres de chaine de caractères étendue (Unicode).
GetWindowTextA | int GetWindowTextA(HWND hWnd, LPTSTR lpString, int nMaxCount); | user32.dll | Cette fonction permet de demander du texte contenu dans une fenêtre d'application.
GetWindowTextLengthA | int GetWindowTextLengthA(HWND hWnd); | user32.dll | Cette fonction permet de demander la longueur du texte contenu dans une fenêtre d'application.
GetWindowTextLengthW | int GetWindowTextLengthW(HWND hWnd); | user32.dll | Cette fonction permet de demander la longueur du texte contenu dans une fenêtre d'application avec des paramètres de chaine de caractères étendues (Unicode).
GetWindowTextW | int GetWindowTextW(HWND hWnd, LPWSTR lpString, int nMaxCount); | user32.dll | Cette fonction permet de demander du texte contenu dans une fenêtre d'application avec des paramètres de chaine de caractères étendues (Unicode).
GetWindowThreadProcessId | DWORD GetWindowThreadProcessId(HWND hWnd, LPDWORD lpdwProcessId); | user32.dll | Cette fonction permet de demander l'identificateur de processus léger étant créer par la fenêtre spécifié et, optionnellement, l'identificateur du processus créant la fenêtre.
GetWindowWord | WORD GetWindowWord(HWND hWnd, int nIndex); | user32.dll | Cette fonction permet de demander une valeur 16 bits de déplacement spécifié dans une fenêtre en mémoire supplémentaire pour la fenêtre spécifié.
GetWinMetaFileBits | UINT GetWinMetaFileBits(HENHMETAFILE hemf, UINT cbBuffer, LPBYTE lpbBuffer, INT fnMapMode, HDC hdcRef); | gdi32.dll | Cette fonction permet de convertir des enregistrements de format étendue en enregistrement de format Windows de fichier méta et d'entreposer les enregistrements convertie dans le tampon spécifié.
GetWindowExtEx | BOOL GetWindowExtEx(HDC hdc, LPSIZE lpSize); | gdi32.dll | Cette fonction permet de demander les extensions X et Y d'une fenêtre associé avec un périphérique de contexte spécifié.
GetWindowOrgEx | BOOL GetWindowOrgEx(HDC hdc, LPPOINT lpPoint); | gdi32.dll | Cette fonction permet de demander les coordonnées X et Y d'origine de la fenêtre associé avec le périphérique de contexte spécifié.
GetWorldTransform | BOOL GetWorldTransform(HDC hdc, LPXFORM lpXform); | gdi32.dll | Cette fonction permet de demander l'espace mondiale courant vers la transformation d'espace de page.
glAccum | void glAccum(GLenum op,GLfloat value); | opengl32.dll | Cette fonction permet d'effecter un contrôle du tampon d'accumulation sous OpenGL.
glAlphaFunc | void glAlphaFunc(GLenum func,GLclampf ref); | opengl32.dll | Cette fonction permet de définir la fonction devant servir de test Alpha sous OpenGL.
glBegin | void glBegin(GLenum mode); | opengl32.dll | Cette fonction permet de définir le commencement de la limite d'une primitive ou d'un groupe de primitive sous OpenGL.
glBitmap | void glBitmap(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap); | opengl32.dll | Cette fonction permet le contenu d'une image Bitmap sous OpenGL.
glBlendFunc | void glBlendFunc(GLenum sfactor, GLenum dfactor); | opengl32.dll | Cette fonction permet de définir les facteurs de blending sous OpenGL.
glCallList | void glCallList(GLuint list); | opengl32.dll | Cette fonction permet d'appeler une liste de commande graphique OpenGL.
glCallLists | void glCallLists(GLsizei n, GLenum type, const GLvoid *lists); | opengl32.dll | Cette fonction permet d'appeler plusieurs listes de commande graphique OpenGL.
glClear | void glClear(GLbitfield mask); | opengl32.dll | Cette fonction permet de vider les tampons du OpenGL ainsi qu'effacement du contenu de la fenêtre.
glClearAccum | void glClearAccum(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); | opengl32.dll | Cette fonction permet de vider le tampon d'accumulation du OpenGL.
glClearColor | void glClearColor(GLclampf red, GLclampf green, GLclampf blue,GLclampf alpha); | opengl32.dll | Cette fonction permet de vider le tampon chromatique du OpenGL.
glClearDepth | void glClearDepth(GLclampd depth); | opengl32.dll | Cette fonction permet de vider le tampon de profondeur du OpenGL.
glClearIndex | void glClearIndex(GLfloat c); | opengl32.dll | Cette fonction permet de vider le mode index du OpenGL.
glClearStencil | void glClearStencil(GLint s); | opengl32.dll | Cette fonction permet de vider le tampon stencil du OpenGL.
glClipPlane | void glClipPlane(GLenum plane, const GLdouble *equation); | opengl32.dll | Cette fonction permet de définir un nouveau plan de clipping du OpenGL.
glColor3b | void glColor3b(GLbyte red,GLbyte green,GLbyte blue); | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'octet dans OpenGL.
glColor3bv | void glColor3bv(const GLbyte *v); | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'une structure d'octets dans OpenGL.
glColor3d | void glColor3d(GLdouble red, GLdouble green, GLdouble blue); | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'un réel double dans OpenGL.
glColor3dv | void glColor3dv(const GLdouble *v); | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'une structure des réels doubles dans OpenGL.
glColor3f | void glColor3f(GLfloat red, GLfloat green, GLfloat blue); | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'un réel dans OpenGL.
glColor3fv | void glColor3fv(const GLfloat *v); | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'une structure des réels dans OpenGL.
glColor3i | void glColor3i(GLint red, GLint green, GLint blue); | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'un entier long dans OpenGL.
glColor3iv | void glColor3iv(const GLint *v); | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'une structure des entiers long dans OpenGL.
glColor3s | void glColor3s(GLshort red, GLshort green, GLshort blue, GLshort alpha); | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'un entier court dans OpenGL.
glColor3sv | void glColor3sv(const GLshort *v); | opengl32.dll | Cette fonction permet de définir la couleur RVB (RGB) sous format d'une structure des entiers court dans OpenGL.
glEnd | void glEnd(void); | opengl32.dll | Cette fonction permet de définir la fin de la limite d'une primitive ou d'un groupe de primitive sous OpenGL.
GlobalAddAtomA | ATOM GlobalAddAtomA(LPCTSTR lpString); | kernel32.dll | Cette fonction permet d'ajouter un caractère à une table global d'Atom et retourne une valeur unique d'identificateur par chaine de caractères.
GlobalAddAtomW | ATOM GlobalAddAtomW(LPCWSTR str); | kernel32.dll | Cette fonction permet d'ajouter un caractère à une table global d'Atom et retourne une valeur unique d'identificateur par chaine de caractères avec des paramètres de chaine de caractères étendue (Unicode).
GlobalAlloc | HGLOBAL GlobalAlloc(UINT uFlags, DWORD dwBytes); | kernel32.dll | Cette fonction permet d'allouer de la mémoire dans les ressources global du système d'exploitation.
GlobalCompact | SIZE_T GlobalCompact(DWORD MinFree); | kernel32.dll | Cette fonction permet de réorganiser les allocations de mémoire dynamique du tas global en spécifiant une taille de mémoire minimum.
GlobalDeleteAtom | ATOM GlobalDeleteAtom(ATOM nAtom); | kernel32.dll | Cette fonction permet de décrémenté le compteur de référence de la chaine de caractères d'Atom global.
GlobalFindAtomA | ATOM GlobalFindAtomA(LPCTSTR lpString); | kernel32.dll | Cette fonction permet de rechercher une table d'Atom global dans la chaine de caractères spécifié et demande l'Atom global associé avec la chaine de caractères.
GlobalFindAtomW | ATOM GlobalFindAtomW(LPCWSTR str); | kernel32.dll | Cette fonction permet de rechercher une table d'Atom global dans la chaine de caractères spécifié et demande l'Atom global associé avec la chaine de caractères étendue (Unicode).
GlobalFix | void GlobalFix(HGLOBAL hglb); | kernel32.dll | Cette fonction permet de prévenir l'objet de mémoire global donnée contre un mouvement de mémoire linéaire. Cette fonction est obsolète.
GlobalFlags | UINT GlobalFlags(HGLOBAL hMem); | kernel32.dll | Cette fonction permet de retourner les informations à propos de l'objet de mémoire global spécifié.
GlobalFree | HGLOBAL GlobalFree(HGLOBAL hMem); | kernel32.dll | Cette fonction permet de libérer de la mémoire dans les ressources global du système d'exploitation.
GlobalGetAtomNameA | UINT GlobalGetAtomNameA(ATOM nAtom, LPTSTR lpBuffer, int nSize); | kernel32.dll | Cette fonction permet de demander une copie de la chaine de caractères associé avec l'Atom global donnée.
GlobalGetAtomNameW | UINT GlobalGetAtomNameW(ATOM atom, LPWSTR buffer, INT count); | kernel32.dll | Cette fonction permet de demander une copie de la chaine de caractères associé avec l'Atom global donnée avec des paramètres de chaine de caractères étendue (Unicode).
GlobalHandle | HGLOBAL GlobalHandle(LPCVOID pMem); | kernel32.dll | Cette fonction permet de demander le Handle de l'objet de mémoire global spécifié.
GlobalLock | LPVOID GlobalLock(HGLOBAL hMem); | kernel32.dll | Cette fonction permet de verrouiller l'emplacement du bloc de mémoire dans les ressources global du système d'exploitation.
GlobalMemoryStatus | VOID GlobalMemoryStatus(LPMEMORYSTATUS lpBuffer); | kernel32.dll | Cette fonction permet de demander l'état de la mémoire du système d'exploitation.
GlobalMemoryStatusEx | BOOL GlobalMemoryStatusEx(LPMEMORYSTATUSEX lpBuffer); | kernel32.dll | Cette fonction permet de demander l'état de la mémoire du système d'exploitation ayant plus de 4 Go de RAM d'installer sur l'ordinateur.
GlobalReAlloc | HGLOBAL GlobalReAlloc(HGLOBAL hMem, DWORD dwBytes, UINT uFlags); | kernel32.dll | Cette fonction permet de changer la taille ou les attributs de l'objet de mémoire global spécifié.
GlobalSize | DWORD GlobalSize(HGLOBAL hMem); | kernel32.dll | Cette fonction permet de demander la taille courante, en octets, de l'objet de mémoire global.
GlobalUnfix | VOID GlobalUnfix(HGLOBAL hMem); | kernel32.dll | Cette fonction permet d'annuler les effets d'une fonction GlobalFix et d'allouer l'objet de mémoire global a être déplacé dans la mémoire linéaire. Cette fonction est obsolète.
GlobalUnlock | BOOL GlobalUnlock(HGLOBAL hMem); | kernel32.dll | Cette fonction permet de déverrouiller l'emplacement du bloc de mémoire dans les ressources global du système d'exploitation.
GlobalUnWire | BOOL GlobalUnWire(HGLOBAL hMem); | kernel32.dll | Cette fonction permet de restituer la convertion d'un pointeur de processus 32 bits après une allocation de mémoire.
GrayStringA | BOOL GrayStringA(HDC hDC, HBRUSH hBrush, GRAYSTRINGPROC lpOutputFunc, LPARAM lpData, int nCount, int X, int Y, int nWidth, int nHeight); | user32.dll | Cette fonction permet de dessiner du texte grisé à l'emplacement donnée par l'écriture du texte dans un Bitmap en mémoire, grisonnant le Bitmap, et copie alors le Bitmap dans l'affichage.
GrayStringW | BOOL GrayStringW(HDC hDC, HBRUSH hBrush, GRAYSTRINGPROC lpOutputFunc, LPARAM lpData, int nCount, int X, int Y, int nWidth, int nHeight); | user32.dll | Cette fonction permet de dessiner du texte grisé à l'emplacement donnée par l'écriture du texte dans un Bitmap en mémoire, grisonnant le Bitmap, et copie alors le Bitmap dans l'affichage avec des paramètres de chaine de caractères étendues (Unicode).
HeapAlloc | LPVOID HeapAlloc(HANDLE hHeap, DWORD dwFlags, SIZE_T dwBytes); | kernel32.dll | Cette fonction permet d'allouer un bloc de mémoire à l'aide d'un tas.
HeapCompact | SIZE_T HeapCompact(HANDLE hHeap, DWORD dwFlags); | kernel32.dll | Cette fonction permet de demander la taille de la largeur d'un bloc de mémoire disponible dans le tas spécifié.
HeapCreate | HANDLE HeapCreate(DWORD flOptions, SIZE_T dwInitialSize, SIZE_T dwMaximumSize); | kernel32.dll | Cette fonction permet de créer un objet de tas privé pouvant être utilisé par le processus appelant.
HeapDestroy | BOOL HeapDestroy(HANDLE hHeap); | kernel32.dll | Cette fonction permet de détruire l'objet de tas spécifié.
HeapFree | BOOL HeapFree(HANDLE hHeap, DWORD dwFlags, LPVOID lpMem); | kernel32.dll | Cette fonction permet de libérer un bloc de mémoire précédemment alloué d'un tas par la fonction HeapAlloc ou HeapReAlloc.
HeapLock | BOOL HeapLock(HANDLE hHeap); | kernel32.dll | Cette fonction permet de verrouiller l'association avec le tas spécifié dans un objet de section critique.
HeapReAlloc | LPVOID HeapReAlloc(HANDLE hHeap, DWORD dwFlags, LPVOID lpMem, SIZE_T dwBytes); | kernel32.dll | Cette fonction permet de réallouer un bloc de mémoire d'un tas.
HeapSize | SIZE_T HeapSize(HANDLE hHeap, DWORD dwFlags, LPCVOID lpMem); | kernel32.dll | Cette fonction permet de demander la taille d'un bloc de mémoire alloué dans le tas par la fonction HeapAlloc ou HeapReAlloc.
HeapUnlock | BOOL HeapUnlock(HANDLE hHeap); | kernel32.dll | Cette fonction permet de déverrouiller l'association avec le tas spécifié dans un objet de section critique.
HeapValidate | BOOL HeapValidate(HANDLE hHeap, DWORD dwFlags, LPCVOID lpMem); | kernel32.dll | Cette fonction permet de valider le tas spécifié.
HeapWalk | BOOL HeapWalk(HANDLE hHeap, LPPROCESS_HEAP_ENTRY lpEntry); | kernel32.dll | Cette fonction permet d'énumérer les blocs de mémoire dans le tas spécifié.
HideCaret | BOOL HideCaret(HWND hWnd); | user32.dll | Cette fonction permet de cacher un caret en l'enlevant de l'écran.
HiliteMenuItem | BOOL HiliteMenuItem(HWND hwnd, HMENU hmenu, UINT uItemHilite, UINT uHilite); | user32.dll | Cette fonction permet de faire passer un item de menu en mode de surbrillance.
IcmpCloseHandle | BOOL IcmpCloseHandle(HANDLE IcmpHandle); | icmp.dll | Cette fonction permet de fermer un fichier sur le protocole ICMP (Internet Control Message Protocol).
IcmpCreateFile | HANDLE IcmpCreateFile(void); | icmp.dll | Cette fonction permet de créer un fichier sur le protocole ICMP (Internet Control Message Protocol).
IcmpSendEcho | DWORD IcmpSendEcho( HANDLE IcmpHandle, IPAddr DestinationAddress, LPVOID RequestData, WORD RequestSize, PIP_OPTION_INFORMATION RequestOptions, LPVOID ReplyBuffer, DWORD ReplySize, DWORD Timeout ); | icmp.dll | Cette fonction permet d'envoyer une requête en écho par le protocole ICMP (Internet Control Message Protocol).
ImpersonateDdeClientWindow | BOOL ImpersonateDdeClientWindow(HWND hWndClient, HWND hWndServer); | user32.dll | Cette fonction permet d'activer l'échange de données dynamique (DDE) vers un contexte d'application sécurisé d'imitation de client DDE.
ImpersonateLoggedOnUser | BOOL ImpersonateLoggedOnUser( HANDLE hToken ); | advapi32.dll | Cette fonction permet d'appeler une processus léger utilisateur impersonnel.
ImpersonateNamedPipeClient | BOOL ImpersonateNamedPipeClient( HANDLE hNamedPipe ); | advapi32.dll | Cette fonction permet de demmander si l'application client a un nom de canal impersonnel.
ImpersonateSelf | BOOL ImpersonateSelf( SECURITY_IMPERSONATION_LEVEL ImpersonationLevel ); | advapi32.dll | Cette fonction permet de demander le jeton d'accès au contexte de sécurité impersonnel d'un processus appelant.
inet_addr | unsigned long inet_addr (const char FAR * cp); | Wsock32.dll | Cette fonction permet l'adresse IP contenu dans une chaine de caractères sous sa forme numérique 32 bits.
InflateRect | BOOL InflateRect(LPRECT lprc, int dx, int dy); | user32.dll | Cette fonction permet d'agrandir ou diminuer la taille d'un objet de rectangle.
InitAtomTable | BOOL InitAtomTable(DWORD nSize); | kernel32.dll | Cette fonction permet d'initialiser la table d'Atom local et fixe la taille spécifié.
InitCommonControlsEx | BOOL InitCommonControlsEx(LPINITCOMMONCONTROLSEX pInitCtrls); | comctl32.dll | Cette fonction permet d'initialiser une classe de contrôle commun.
InitializeAcl | BOOL InitializeAcl( PACL pAcl, DWORD nAclLength, DWORD dwAclRevision ); | advapi32.dll | Cette fonction permet de créer une nouvelle structure de liste de contrôle d'accès (ACL).
InitializeCriticalSection | VOID InitializeCriticalSection(LPCRITICAL_SECTION lpCriticalSection); | kernel32.dll | Cette fonction permet d'initialiser un objet de section critique.
InitializeSecurityDescriptor | BOOL InitializeSecurityDescriptor( PSECURITY_DESCRIPTOR pSecurityDescriptor, DWORD dwRevision ); | advapi32.dll | Cette fonction permet d'initialiser un nouveau descripteur de sécurité.
InitializeSid | BOOL InitializeSid( PSID Sid, PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority, BYTE nSubAuthorityCount ); | advapi32.dll | Cette fonction permet d'initialiser une structure d'identificateur de sécurité (SID).
InitiateSystemShutdownA | BOOL InitiateSystemShutdownA( LPSTR lpMachineName, LPSTR lpMessage, DWORD dwTimeout, BOOL bForceAppsClosed, BOOL bRebootAfterShutdown ); | advapi32.dll | Cette fonction permet d'initier l'opération de fermeture ou de redémarrage en cours d'exécution du système d'exploitation Windows.
InitiateSystemShutdownW | BOOL InitiateSystemShutdownW( LPWSTR lpMachineName, LPWSTR lpMessage, DWORD dwTimeout, BOOL bForceAppsClosed, BOOL bRebootAfterShutdown ); | advapi32.dll | Cette fonction permet d'initier l'opération de fermeture ou de redémarrage en cours d'exécution du système d'exploitation Windows avec des paramètres de chaine de caractères étendue (Unicode).
InSendMessage | BOOL InSendMessage(VOID); | user32.dll | Cette fonction permet de spécifier si la procédure de la fenêtre courante est en traitement d'un message d'envoi d'une autre tâche par appel de la fonction SendMessage.
InsertMenuA | BOOL InsertMenuA(HMENU hMenu, UINT uPosition, UINT uFlags, UINT uIDNewItem, LPCTSTR lpNewItem); | user32.dll | Cette fonction permet d'insérer un nouvel item de menu dans un menu et déplace les autres items en bas du menu.
InsertMenuItemA | BOOL InsertMenuItemA(HMENU hMenu, UINT uItem, BOOL fByPosition, LPMENUITEMINFO lpmii); | user32.dll | Cette fonction permet d'insérer un nouvel item de menu à la position spécifié dans la barre de menu ou un menu contextuel.
InsertMenuItemW | BOOL InsertMenuItemW(HMENU hMenu, UINT uItem, BOOL fByPosition, LPCMENUITEMINFOW lpmii); | user32.dll | Cette fonction permet d'insérer un nouvel item de menu à la position spécifié dans la barre de menu ou un menu contextuel avec les paramètres de chaine de caractères étendues (Unicode).
InsertMenuW | BOOL InsertMenuW(HMENU hMenu, UINT uPosition, UINT uFlags, UINT uIDNewItem, LPCWSTR lpNewItem); | user32.dll | Cette fonction permet d'insérer un nouvel item de menu dans un menu et déplace les autres items en bas du menu avec des paramètres de chaine de caractères étendues (Unicode).
InstallNewDevice | BOOL InstallNewDevice( HWND hwndParent, LPGUID ClassGuid, PDWORD pReboot ); | newdev.dll | Cette fonction permet d'installer un nouveau périphérique.
InterlockedCompareExchange | PVOID InterlockedCompareExchange(PVOID *Destination, PVOID Exchange, PVOID Comperand); | kernel32.dll | Cette fonction permet d'effectuer un traitement de comparaison atomique de valeurs spécifiés et échange les valeurs en se basant sur le résultat de la comparaison.
InterlockedDecrement | LONG InterlockedDecrement(LPLONG lpAddend); | kernel32.dll | Cette fonction permet de décrémenter les deux valeurs spécifié de un et vérifie le résultat des valeurs.
InterlockedExchange | LONG InterlockedExchange(LPLONG Target, LONG Value); | kernel32.dll | Cette fonction permet d'échanger automatiquement une paire de valeurs 32 bits.
InterlockedExchangeAdd | LONG InterlockedExchangeAdd(PLONG Addend, LONG Increment); | kernel32.dll | Cette fonction permet d'effectuer un traitement automatique d'ajouter d'une valeur incrémenté à une variable ajouté.
InterlockedIncrement | LONG InterlockedIncrement(LPLONG lpAddend); | kernel32.dll | Cette fonction permet d'incrémenter les deux valeurs des variables spécifiés et vérifie la valeur du résultat.
InternetAutodial | BOOL InternetAutodial(DWORD dwFlags,HWND hwndParent); | wininet.dll | Cette fonction permet de provoquer une connexion Internet en utilisant le protocole TCP/IP.
InternetAutodialHangup | BOOL InternetAutodialHangup(DWORD dwReserved); | wininet.dll | Cette fonction permet d'arrêter une connexion Internet en utilisant le protocole TCP/IP.
InternetGetConnectedState | BOOL InternetGetConnectedState(LPDWORD lpdwFlags,DWORD dwReserved); | wininet.dll | Cette fonction permet de demander le type de connexion Internet qu'utilise le TCP/IP de Windows.
IntersectClipRect | int IntersectClipRect(HDC hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect); | gdi32.dll | Cette fonction permet de créer une nouvelle région de capture vers l'intersection de la région courante et du rectangle spécifié.
IntersectRect | BOOL IntersectRect(LPRECT lprcDst, CONST RECT * lprcSrc1, CONST RECT * lprcSrc2); | user32.dll | Cette fonction permet de calculer l'intersection de 2 sources rectangulaires et place les coordonnées du rectangle d'intersection dans le rectangle de destination.
InvalidateRect | BOOL InvalidateRect(HWND hWnd, CONST RECT * lpRect, BOOL bErase); | user32.dll | Cette fonction permet d'ajouter un rectangle pour la mise à jour d'une région d'une fenêtre.
InvalidateRgn | BOOL InvalidateRgn(HWND hWnd, HRGN hRgn, BOOL bErase); | user32.dll | Cette fonction permet d'ajouter une région à une région de fenêtre à mettre à jour.
InvertRect | BOOL InvertRect(HDC hDC, CONST RECT * lprc); | user32.dll | Cette fonction permet d'inverser une région rectangulaire.
InvertRgn | BOOL InvertRgn(HDC hdc, HRGN hrgn); | gdi32.dll | Cette fonction permet d'inverser les couleurs d'une région spécifié.
IsBadCodePtr | BOOL IsBadCodePtr(FARPROC lpfn); | kernel32.dll | Cette fonction permet de demander si l'appel du processus a un accès de mémoire en lecture à l'adresse spécifié.
IsBadHugeReadPtr | BOOL IsBadHugeReadPtr(CONST VOID *lp, UINT ucb); | kernel32.dll | Cette fonction permet de vérifier si l'appel du processus a un accès en lecture dans les rangs de mémoire spécifié.
IsBadHugeWritePtr | BOOL IsBadHugeWritePtr(LPVOID lp, UINT ucb); | kernel32.dll | Cette fonction permet de vérifier si l'appel du processus a un accès en écriture dans les rangs de mémoire spécifié.
IsBadReadPtr | BOOL IsBadReadPtr(CONST VOID *lp, UINT ucb); | kernel32.dll | Cette fonction permet de vérifier si l'appel du processus a un accès en lecture dans les rangs de mémoire spécifié.
IsBadStringPtrA | BOOL IsBadStringPtrA(LPCTSTR lpsz, UINT ucchMax); | kernel32.dll | Cette fonction permet de vérifier que l'appel du processus à un accès en lecture dans les rangs de mémoire pointer sur une chaine de caractères.
IsBadStringPtrW | BOOL IsBadStringPtrW(LPCWSTR str, UINT max); | kernel32.dll | Cette fonction permet de vérifier que l'appel du processus à un accès en lecture dans les rangs de mémoire pointer sur une chaine de caractères étendue (Unicode).
IsBadWritePtr | BOOL IsBadWritePtr(LPVOID lp, UINT ucb); | kernel32.dll | Cette fonction permet de vérifier si l'appel du processus a un accès en écriture dans les rangs de mémoire spécifié.
IsDBCSLeadByte | BOOL IsDBCSLeadByte(BYTE TestChar); | kernel32.dll | Cette fonction permet de demander si un caractère spécifié est un octet de tête, le premier octet d'un caractère est un DBCS (Double-Byte Character Set).
IsDBCSLeadByteEx | BOOL IsDBCSLeadByteEx(UINT CodePage, BYTE TestChar); | kernel32.dll | Cette fonction permet de demander si un caractère spécifié est un octet de tête, le premier octet d'un caractère est un DBCS (Double-Byte Character Set) avec un code de page.
IsCharAlphaA | BOOL IsCharAlphaA(TCHAR ch); | user32.dll | Cette fonction permet de demander si un caractère fait partie de l'ensemble de caractères alphabéthique de la langue.
IsCharAlphaNumericA | BOOL IsCharAlphaNumericA(TCHAR ch); | user32.dll | Cette fonction permet de demander si un caractère est une lettre ou un chiffre arabes.
IsCharAlphaNumericW | BOOL IsCharAlphaNumericW(WCHAR ch); | user32.dll | Cette fonction permet de demander si un caractère est une lettre ou un chiffre arabes avec des paramètres de chaine de caractères étendues (Unicode).
IsCharAlphaW | BOOL IsCharAlphaW(WCHAR ch); | user32.dll | Cette fonction permet de demander si un caractère fait partie de l'ensemble de caractères alphabéthique de la langue avec des paramètres de chaine de caractères étendues (Unicode).
IsCharLowerA | BOOL IsCharLowerA(TCHAR ch); | user32.dll | Cette fonction permet de demander si un caractère est une lettre en minuscule.
IsCharLowerW | BOOL IsCharLowerW(WCHAR ch); | user32.dll | Cette fonction permet de demander si un caractère est une lettre en minuscule avec des paramètres de chaine de caractères étendues (Unicode).
IsCharUpperA | BOOL IsCharUpperA(TCHAR ch); | user32.dll | Cette fonction permet de demander si un caractère est une lettre en majuscule.
IsCharUpperW | BOOL IsCharUpperW(WCHAR ch); | user32.dll | Cette fonction permet de demander si un caractère est une lettre en majuscule avec des paramètres de chaine de caractères étendues (Unicode).
IsChild | BOOL IsChild(HWND hWndParent, HWND hWnd); | user32.dll | Cette fonction permet de demander si la fenêtre spécifié est l'enfant ou d'une autre descendance direct de la fenêtre parent spécifié.
IsClipboardFormatAvailable | BOOL IsClipboardFormatAvailable(UINT format); | user32.dll | Cette fonction permet de demander si les données d'un certain format exist dans le presse-papier.
IsDebuggerPresent | BOOL IsDebuggerPresent(void); | kernel32.dll | Cette fonction permet de demander si l'application en cours est sous l'influence d'un débogueur.
IsDialogMessageA | BOOL IsDialogMessageA(HWND hDlg, LPMSG lpMsg); | user32.dll | Cette fonction permet de demander si le message spécifié est prévu dans la modélisation de la boite de dialogue donnée et, si c'est le cas, traite le message.
IsDialogMessageW | BOOL IsDialogMessageW(HWND hDlg, LPMSG lpMsg); | user32.dll | Cette fonction permet de demander si le message spécifié est prévu dans la modélisation de la boite de dialogue donnée et, si c'est le cas, traite le message avec des paramètres de chaine de caractères étendues (Unicode).
IsDlgButtonChecked | UINT IsDlgButtonChecked(HWND hDlg, int nIDButton); | user32.dll | Cette fonction permet de demander si un bouton a une coche à côté de lui et si un bouton à trois états de gris, est coché ou pas.
IsIconic | BOOL IsIconic(HWND hWnd); | user32.dll | Cette fonction permet de demander si la fenêtre spécifié est minimisé (en état d'icône).
IsMenu | BOOL IsMenu(HMENU hMenu); | user32.dll | Cette fonction permet d'indiquer si le Handle spécifié est un Handle de menu.
IsProcessorFeaturePresent | BOOL IsProcessorFeaturePresent(DWORD ProcessorFeature); | kernel32.dll | Cette fonction permet de demander si les fonctionnalités du microprocessseur sont supportés par l'un des microprocesseur de la machine courante.
IsRectEmpty | BOOL IsRectEmpty(CONST RECT * lprc); | user32.dll | Cette fonction permet de déterminer si le rectangle spécifié est vide.
IsTextUnicode | DWORD IsTextUnicode( CONST LPVOID lpBuffer, int cb, LPINT lpi ); | advapi32.dll | Cette fonction permet de demander l'adresse du tampon contenant probablement une forme de texte Unicode.
IsValidAcl | BOOL IsValidAcl( PACL pAcl ); | advapi32.dll | Cette fonction permet de valider une liste de contrôle d'accès (ACL).
IsValidCodePage | BOOL IsValidCodePage(UINT CodePage); | kernel32.dll | Cette fonction permet d'indiquer si la page de code spécifié est valide.
IsValidLocale | BOOL IsValidLocale(LCID Locale, DWORD dwFlags); | kernel32.dll | Cette fonction permet d'appliquer un test de validité à un identificateur locale.
IsValidSecurityDescriptor | BOOL IsValidSecurityDescriptor( PSECURITY_DESCRIPTOR pSecurityDescriptor ); | advapi32.dll | Cette fonction permet de valider une structure de descripteur de sécurité «SECURITY_DESCRIPTOR».
IsValidSid | BOOL IsValidSid( PSID pSid ); | advapi32.dll | Cette fonction permet de valider une structure SID en vérifiant que le numéro de version est situé dans le rang et les intervalles de nombres de sous-autorité.
IsWindow | BOOL IsWindow(HWND hWnd); | user32.dll | Cette fonction permet de demander si la fenêtre de Handle spécifié est valide.
IsWindowEnabled | BOOL IsWindowEnabled(HWND hWnd); | user32.dll | Cette fonction permet de demander si la fenêtre spécifié est activé par la souris ou l'entrée clavier.
IsWindowUnicode | BOOL IsWindowUnicode(HWND hWnd); | user32.dll | Cette fonction permet de demander si la fenêtre spécifié est une fenêtre Unicode native.
IsWindowVisible | BOOL IsWindowVisible(HWND hWnd); | user32.dll | Cette fonction permet de demander si la fenêtre spécifié est dans un état de visibilité.
IsZoomed | BOOL IsZoomed(HWND hWnd); | user32.dll | Cette fonction permet de demander si la fenêtre spécifié est maximisé (ou prend toute l'écran).
keybd_event | VOID keybd_event(BYTE bVk, BYTE bScan, DWORD dwFlags, DWORD dwExtraInfo); | user32.dll | Cette fonction permet de provoquer un événement d'appui de touche clavier.
KillTimer | BOOL KillTimer(HWND hWnd, UINT uIDEvent); | user32.dll | Cette fonction permet de détruire la minuterie spécifié.
LCMapStringA | int LCMapStringA(LCID Locale, DWORD dwMapFlags, LPCTSTR lpSrcStr, int cchSrc, LPTSTR lpDestStr, int cchDest); | kernel32.dll | Cette fonction permet de cartographier une chaine de caractères vers une autre en effectuant le traitement de transformation de dépendance locale.
LCMapStringW | INT LCMapStringW(LCID lcid, DWORD flags, LPCWSTR src, INT srclen, LPWSTR dst, INT dstlen); | kernel32.dll | Cette fonction permet de cartographier une chaine de caractères étendue (Unicode) vers une autre en effectuant le traitement de transformation de dépendance locale.
LeaveCriticalSection | VOID LeaveCriticalSection(LPCRITICAL_SECTION lpCriticalSection); | kernel32.dll | Cette fonction permet de libérer le propriétaire d'un objet de section critique spécifié.
LineDDA | BOOL LineDDA(int nXStart, int nYStart, int nXEnd, int nYEnd, LINEDDAPROC lpLineFunc, LPARAM lpData); | gdi32.dll | Cette fonction permet de calculer tous les points successifs d'une ligne spécifié par les coordonnées de début et de fin.
LineTo | BOOL LineTo(HDC hdc, int nXEnd, int nYEnd); | gdi32.dll | Cette fonction permet de tracer une ligne des coordonnées courante à la position spécifié.
LoadAcceleratorsA | HACCEL LoadAcceleratorsA(HINSTANCE hInstance, LPCTSTR lpTableName); | user32.dll | Cette fonction permet d'effectuer le chargement d'une table d'accélérateur d'une ressource.
LoadAcceleratorsW | HACCEL LoadAcceleratorsW(HINSTANCE hInstance, LPCWSTR lpTableName); | user32.dll | Cette fonction permet d'effectuer le chargement d'une table d'accélérateur d'une ressource avec des paramètres de chaine de caractères étendues (Unicode).
LoadBitmapA | HBITMAP LoadBitmapA(HINSTANCE hInstance, LPCTSTR lpBitmapName); | user32.dll | Cette fonction permet de charger la ressource de Bitmap spécifié du fichier de module d'exécutable donnée.
LoadBitmapW | HBITMAP LoadBitmapW(HINSTANCE hInstance, LPCWSTR lpBitmapName); | user32.dll | Cette fonction permet de charger la ressource de Bitmap spécifié du fichier de module d'exécutable donnée avec des paramètres de chaine de caractères étendues (Unicode).
LoadCursorA | HCURSOR LoadCursorA(HINSTANCE hInstance, LPCTSTR lpCursorName); | user32.dll | Cette fonction permet de sélectionner un pointeur de souris.
LoadCursorFromFileA | HCURSOR LoadCursorFromFileA(LPCTSTR lpFileName); | user32.dll | Cette fonction permet de charger à partir d'un fichier un pointeur de souris.
LoadCursorFromFileW | HCURSOR LoadCursorFromFileW(LPCWSTR lpFileName); | user32.dll | Cette fonction permet de charger à partir d'un fichier un pointeur de souris avec des paramètres de chaine de caractères étendues (Unicode).
LoadCursorW | HCURSOR LoadCursorW(HINSTANCE hInstance, LPCWSTR lpCursorName); | user32.dll | Cette fonction permet de sélectionner un pointeur de souris avec des paramètres de chaine de caractères étendues (Unicode).
LoadIconA | HICON LoadIconA(HINSTANCE hInstance, LPCTSTR lpIconName); | user32.dll | Cette fonction permet de charger une icône à partir d'un fichier.
LoadIconW | HICON LoadIconW(HINSTANCE hInstance, LPCWSTR lpIconName); | user32.dll | Cette fonction permet de charger une icône à partir d'un fichier avec des paramètres de chaine de caractères étendues (Unicode).
LoadImageA | HANDLE LoadImageA( HINSTANCE hinst, LPCTSTR lpszName, UINT uType, int cxDesired, int cyDesired, UINT fuLoad ); | user32.dll | Cette fonction permet de charger une image à partir d'une icône, un curseur ou un Bitmap.
LoadImageW | HANDLE LoadImageW(HINSTANCE hinst, LPCWSTR lpszName, UINT uType, int cxDesired, int cyDesired, UINT fuLoad); | user32.dll | Cette fonction permet de charger une image à partir d'une icône, un curseur ou un Bitmap avec des paramètres de chaine de caractères étendues (Unicode).
LoadKeyboardLayoutA | HKL LoadKeyboardLayoutA(LPCTSTR pwszKLID, UINT Flags); | user32.dll | Cette fonction permet de charger une nouvelle couche clavier dans le système.
LoadKeyboardLayoutW | HKL LoadKeyboardLayoutW(LPCWSTR pwszKLID, UINT Flags); | user32.dll | Cette fonction permet de charger une nouvelle couche clavier dans le système avec des paramètres de chaine de caractères étendues (Unicode).
LoadLibraryA | HINSTANCE LoadLibraryA(LPCTSTR lpLibFileName); | kernel32.dll | Cette fonction permet d'effectuer le chargement du module de bibliothèque spécifié.
LoadLibraryW | HMODULE LoadLibraryW(LPCWSTR libnameW); | kernel32.dll | Cette fonction permet d'effectuer le chargement du module de bibliothèque spécifié avec des paramètres de chaine de caractères étendue (Unicode).
LoadLibraryExA | HINSTANCE LoadLibraryExA(LPCTSTR lpLibFileName, HANDLE hFile, DWORD dwFlags); | kernel32.dll | Cette fonction permet de cartographier un module exécutable spécifié dans l'espace d'adressage du processus d'appel.
LoadLibraryExW | HMODULE LoadLibraryExW(LPCWSTR libnameW, HANDLE hfile, DWORD flags); | kernel32.dll | Cette fonction permet de cartographier un module exécutable spécifié dans l'espace d'adressage du processus d'appel avec des paramètres de chaine de caractères étendue (Unicode).
LoadMenuA | HMENU LoadMenuA(HINSTANCE hInstance, LPCTSTR lpMenuName); | user32.dll | Cette fonction permet d'effectuer le chargement de la ressource de menu spécifié du fichier exécutable avec l'instance d'application donnée.
LoadMenuIndirectA | HMENU LoadMenuIndirectA(CONST MENUTEMPLATE *lpMenuTemplate); | user32.dll | Cette fonction permet de charger le gabarit de menu spécifié en mémoire.
LoadMenuIndirectW | HMENU LoadMenuIndirectW(CONST MENUTEMPLATE *lpMenuTemplate); | user32.dll | Cette fonction permet de charger le gabarit de menu spécifié en mémoire avec des paramètres de chaine de caractères étendues (Unicode).
LoadMenuW | HMENU LoadMenuW(HINSTANCE hInstance, LPCWSTR lpMenuName); | user32.dll | Cette fonction permet d'effectuer le chargement de la ressource de menu spécifié du fichier exécutable avec l'instance d'application donnée avec des paramètres de chaine de caractères étendues (Unicode).
LoadModule | DWORD LoadModule(LPCSTR lpModuleName, LPVOID lpParameterBlock); | kernel32.dll | Cette fonction permet de charger et d'exécution une application Windows ou crée un nouvel instance dans un application Windows existante.
LoadResource | HGLOBAL LoadResource(HMODULE hModule, HRSRC hResInfo); | kernel32.dll | Cette fonction permet de charger la ressource spécifié dans la mémoire global.
LoadStringA | int LoadStringA(HINSTANCE hInstance, UINT uID, LPTSTR lpBuffer, int nBufferMax); | user32.dll | Cette fonction permet d'effectuer le chargement de la chaine de caractères spécifié d'une ressource.
LoadStringW | int LoadStringW(HINSTANCE hInstance, UINT uID, LPWSTR lpBuffer, int nBufferMax); | user32.dll | Cette fonction permet d'effectuer le chargement de la chaine de caractères spécifié d'une ressource avec des paramètres de chaine de caractères étendues (Unicode).
LocalAlloc | HLOCAL LocalAlloc(UINT uFlags, UINT uBytes); | kernel32.dll | Cette fonction permet d'allouer le nombre d'octets spécifiés pour le tas local.
LocalCompact | UINT LocalCompact(UINT uMinFree); | kernel32.dll | Cette fonction permet de réarranger le tas local si la quantité de mémoire spécifié est disponible.
LocalFileTimeToFileTime | BOOL LocalFileTimeToFileTime(CONST FILETIME * lpLocalFileTime, LPFILETIME lpFileTime); | kernel32.dll | Cette fonction permet de convertir un temps de fichier local en temps de fichier basé sur l'UTC (Coordinated Universal Time).
LocalFlags | UINT LocalFlags(HLOCAL hMem); | kernel32.dll | Cette fonction permet de demander les informations à propos de l'objet de mémoire local.
LocalFree | HLOCAL LocalFree(HLOCAL hMem); | kernel32.dll | Cette fonction permet de demander l'objet de mémoire local et d'invalider un Handle.
LocalLock | LPVOID LocalLock(HLOCAL hMem); | kernel32.dll | Cette fonction permet de demander un pointeur sur l'objet de mémoire local.
LocalReAlloc | HLOCAL LocalReAlloc(HLOCAL hMem, UINT uBytes, UINT uFlags); | kernel32.dll | Cette fonction permet de changer la taille ou les attributs d'un objet de mémoire local spécifié.
LocalShrink | UINT LocalShrink(HLOCAL hloc, UINT cbNewSize); | kernel32.dll | Cette fonction rapetisser le tas local du segment spécifié.
LocalSize | UINT LocalSize(HLOCAL hMem); | kernel32.dll | Cette fonction permet de demander la taille, en octets, de l'objet de mémoire local spécifié.
LocalUnlock | BOOL LocalUnlock(HLOCAL hMem); | kernel32.dll | Cette fonction permet de déverrouiller un objet de mémoire local spécifié.
LockFile | BOOL LockFile(HANDLE hFile, DWORD dwFileOffsetLow, DWORD dwFileOffsetHigh, DWORD nNumberOfBytesToLockLow, DWORD nNumberOfBytesToLockHigh); | kernel32.dll | Cette fonction permet de verrouiller une région d'un fichier ouvert.
LockFileEx | BOOL LockFileEx(HANDLE hFile, DWORD dwFlags, DWORD dwReserved, DWORD nNumberOfBytesToLockLow, DWORD nNumberOfBytesToLockHigh, LPOVERLAPPED lpOverlapped ); | kernel32.dll | Cette fonction permet de verrouiller un rang d'octets dans un fichier ouvert avec un accès de partage ou d'exclusivité.
LockResource | LPVOID LockResource(HGLOBAL hResData); | kernel32.dll | Cette fonction permet de verrouiller une ressource spécifié.
LockWindowUpdate | BOOL LockWindowUpdate(HWND hWndLock); | user32.dll | Cette fonction permet d'activer ou désactiver l'affichage du contenu d'une fenêtre d'application.
LockWorkStation | BOOL LockWorkStation(VOID); | user32.dll | Cette fonction permet verrouiller la poste de travail avec le mot de passe de l'utilisateur courant. Cette fonction est l'équivalent de Ctrl+Alt+Delete et «Verrouiller Station de Travail».
LogonUserA | BOOL LogonUserA( LPTSTR lpszUsername, LPTSTR lpszDomain, LPTSTR lpszPassword, DWORD dwLogonType, DWORD dwLogonProvider, PHANDLE phToken ); | advapi32.dll | Cette fonction permet d'effectuer une opération de connexion d'un utilisateur.
LogonUserW | BOOL LogonUserW(LPWSTR lpszUsername, LPWSTR lpszDomain, LPWSTR lpszPassword, DWORD dwLogonType, DWORD dwLogonProvider, PHANDLE phToken ); | advapi32.dll | Cette fonction permet d'effectuer une opération de connexion d'un utilisateur avec des paramètres de chaine de caractères étendue (Unicode).
LookupAccountNameA | BOOL LookupAccountNameA( LPCTSTR lpSystemName, LPCTSTR lpAccountName, PSID Sid, LPDWORD cbSid, LPTSTR ReferencedDomainName, LPDWORD cbReferencedDomainName, PSID_NAME_USE peUse ); | advapi32.dll | Cette fonction permet d'accepter le nom d'un système ou d'un compte en entrée.
LookupAccountNameW | BOOL LookupAccountNameW( LPCWSTR lpSystemName, LPCWSTR lpAccountName, PSID Sid, LPDWORD cbSid, LPWSTR ReferencedDomainName, LPDWORD cchReferencedDomainName, PSID_NAME_USE peUse ); | advapi32.dll | Cette fonction permet d'accepter le nom d'un système ou d'un compte en entrée avec des paramètres de chaine de caractères étendue (Unicode).
LookupAccountSidA | BOOL LookupAccountSidA( LPCTSTR lpSystemName, PSID Sid, LPTSTR Name, LPDWORD cbName, LPTSTR ReferencedDomainName, LPDWORD cbReferencedDomainName, PSID_NAME_USE peUse ); | advapi32.dll | Cette fonction permet d'accepter un identificateur de sécurité (SID) en entrée
LookupAccountSidW | BOOL LookupAccountSidW( LPCWSTR lpSystemName, PSID Sid, LPWSTR Name, LPDWORD cbName, LPWSTR ReferencedDomainName, LPDWORD cbReferencedDomainName, PSID_NAME_USE peUse); | advapi32.dll | Cette fonction permet d'accepter un identificateur de sécurité (SID) en entrée avec des paramètres de chaine de caractères étendue (Unicode).
LookupIconIdFromDirectory | int LookupIconIdFromDirectory(PBYTE presbits, BOOL fIcon); | user32.dll | Cette fonction permet d'effectuer la recherche de données d'icône ou de curseur dans un icône ou curseur étant la meilleure correspondance avec le périphérique d'affichage courant.
LookupIconIdFromDirectoryEx | int LookupIconIdFromDirectoryEx(PBYTE presbits, BOOL fIcon, int cxDesired, int cyDesired, UINT Flags); | user32.dll | Cette fonction permet d'effectuer la recherche de données d'icône ou de curseur dans un icône ou curseur étant la meilleure correspondance avec le périphérique d'affichage courant avec des options particulières.
LookupPrivilegeDisplayNameA | BOOL LookupPrivilegeDisplayNameA( LPCTSTR lpSystemName, LPCTSTR lpName, LPTSTR lpDisplayName, LPDWORD cbDisplayName, LPDWORD lpLanguageId ); | advapi32.dll | Cette fonction permet de demander le nom d'affichage représenté par le prévilège spécifié.
LookupPrivilegeDisplayNameW | BOOL LookupPrivilegeDisplayNameW ( LPCWSTR lpSystemName, LPCWSTR lpName, LPWSTR lpDisplayName, LPDWORD cbDisplayName, LPDWORD lpLanguageId ); | advapi32.dll | Cette fonction permet de demander le nom d'affichage représenté par le prévilège spécifié avec des paramètres de chaine de caractères étendue (Unicode).
LookupPrivilegeNameA | BOOL LookupPrivilegeNameA( LPCTSTR lpSystemName, PLUID lpLuid, LPTSTR lpName, LPDWORD cbName ); | advapi32.dll | Cette fonction permet de demander le nom correspondant au prévilège représenté par un système spécifié par identificateur local unique (LUID).
LookupPrivilegeNameW | BOOL LookupPrivilegeNameW ( LPCWSTR lpSystemName, PLUID lpLuid, LPWSTR lpName, LPDWORD cchName ); | advapi32.dll | Cette fonction permet de demander le nom correspondant au prévilège représenté par un système spécifié par identificateur local unique (LUID) avec des paramètres de chaine de caractères étendue (Unicode)
LookupPrivilegeValueA | BOOL LookupPrivilegeValueA( LPCTSTR lpSystemName, LPCTSTR lpName, PLUID lpLuid ); | advapi32.dll | Cette fonction permet de demander l'identificateur local unique (LUID) utilisé par un système spécifié par une représentation local d'un nom de prévilège.
LookupPrivilegeValueW | BOOL LookupPrivilegeValueW( LPCWSTR lpSystemName, LPCWSTR lpName, PLUID lpLuid ); | advapi32.dll | Cette fonction permet de demander l'identificateur local unique (LUID) utilisé par un système spécifié par une représentation local d'un nom de prévilège avec des paramètres de chaine de caractères étendue (Unicode)
LPtoDP | BOOL LPtoDP(HDC hdc, LPPOINT lpPoints, int nCount); | gdi32.dll | Cette fonction permet de convertir les coordonnées logiques (points) en coordonnées d'un périphérique.
lstrcatA | LPTSTR lstrcatA(LPTSTR lpString1, LPCTSTR lpString2); | kernel32.dll | Cette fonction permet d'ajouter une chaine de caractères à une autre.
lstrcatW | LPWSTR lstrcatW(LPWSTR lpString1, LPWSTR lpString2); | kernel32.dll | Cette fonction permet d'ajouter une chaine de caractères étendue (Unicode) à une autre.
lstrcmpA | int lstrcmpA(LPCTSTR lpString1, LPCTSTR lpString2); | kernel32.dll | Cette fonction permet d'effectuer la comparaison de deux chaines de caractères ASCIZ.
lstrcmpW | int lstrcmpW(LPCWSTR str1, LPCWSTR str2); | kernel32.dll | Cette fonction permet d'effectuer la comparaison de deux chaines de caractères étendues (Unicode).
lstrcmpiA | int lstrcmpiA(LPCTSTR lpString1, LPCTSTR lpString2); | kernel32.dll | Cette fonction permet d'effectuer une comparaison de deux chaines de caractères sans tenir compte des majuscules ou minuscules.
lstrcmpiW | int lstrcmpiW(LPCWSTR str1, LPCWSTR str2); | kernel32.dll | Cette fonction permet d'effectuer une comparaison de deux chaines de caractères étendues (Unicode) sans tenir compte des majuscules ou minuscules.
lstrcpyA | LPTSTR lstrcpyA(LPTSTR lpString1, LPCTSTR lpString2); | kernel32.dll | Cette fonction permet de copier une chaine de caractères dans un tampon.
lstrcpyW | LPCWSTR lstrcpyW(LPCWSTR lpString1, LPCWSTR lpString2); | kernel32.dll | Cette fonction permet de copier une chaine de caractères étendues (Unicode) dans un tampon.
lstrcpynA | LPTSTR lstrcpynA(LPTSTR lpString1, LPCTSTR lpString2, int iMaxLength); | kernel32.dll | Cette fonction permet d'effectuer une copie du nombre de caractères spécifié d'une chaine de caractères vers un tampon en mémoire.
lstrcpynW | LPCWSTR lstrcpynW(LPCWSTR lpString1, LPCWSTR lpString2, int iMaxLength); | kernel32.dll | Cette fonction permet d'effectuer une copie du nombre de caractères spécifié d'une chaine de caractères étendue (Unicode) vers un tampon en mémoire.
lstrlenA | int lstrlenA(LPCTSTR lpString); | kernel32.dll | Cette fonction permet de retourner la longueur, en octets, de la chaine de caractères spécifié.
lstrlenW | int lstrlenW(LPCWSTR lpString); | kernel32.dll | Cette fonction permet de retourner la longueur, en octets, de la chaine de caractères étendue (Unicode) spécifié.
LZClose | VOID LZClose(INT hFile); | lz32.dll | Cette fonction permet de fermer un fichier compressé.
LZCopy | LONG LZCopy(INT hfSource,INT hfDest); | lz32.dll | Cette fonction permet de copier un fichier en dehors du fichier compressé ou permet de le compresser et de l'inclure avec le fichier compressé.
LZOpenFileA | INT LZOpenFileA(LPTSTR lpFileName,LPOFSTRUCT lpReOpenBuf, WORD wStyle); | lz32.dll | Cette fonction permet de créer, ouvrir ou supprimer un fichier compressé.
MakeAbsoluteSD | BOOL MakeAbsoluteSD( PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor, PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor, LPDWORD lpdwAbsoluteSecurityDescriptorSize, PACL pDacl, LPDWORD lpdwDaclSize, PACL pSacl, LPDWORD lpdwSaclSize, PSID pOwner, LPDWORD lpdwOwnerSize, PSID pPrimaryGroup, LPDWORD lpdwPrimaryGroupSize ); | advapi32.dll | Cette fonction permet de créer un descripteur de sécurité dans un format absolue en utilisant un gabarit de format relatif de descripteur de sécurité.
MakeSelfRelativeSD | BOOL MakeSelfRelativeSD( PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor, PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor, LPDWORD lpdwBufferLength ); | advapi32.dll | Cette fonction permet de créer un descripteur de sécurité dans un format relatif en utilisant un gabarit de format absolue de descripteur de sécurité.
MakeSureDirectoryPathExists | BOOL MakeSureDirectoryPathExists(IN LPSTR Path); | imagehlp.dll | Cette fonction permet de s'assurer que toutes l'arborescente d'un chemin de répertoires existent et ont été créés.
MapDialogRect | BOOL MapDialogRect(HWND hDlg, LPRECT lpRect); | user32.dll | Cette fonction permet d'effectuer la conversion de l'unité de boite de dialogue à l'unité d'écran (pixels).
MapGenericMask | VOID MapGenericMask( PDWORD AccessMask, PGENERIC_MAPPING GenericMapping ); | advapi32.dll | Cette fonction permet de générer une carte de masque de bon accès spécifié et de bon accès standard
MAPISendDocuments | ULONG FAR PASCAL MAPISendDocuments(ULONG ulUIParam, LPTSTR lpszDelimChar, LPTSTR lpszFullPaths, LPTSTR lpszFileNames, ULONG ulReserved); | mapi32.dll | Cette fonction permet d'effectuer l'envoye d'un message de style standard avec des fichiers attachés.
MapViewOfFile | LPVOID MapViewOfFile(HANDLE hFileMappingObject, DWORD dwDesiredAccess, DWORD dwFileOffsetHigh, DWORD dwFileOffsetLow, DWORD dwNumberOfBytesToMap); | kernel32.dll | Cette fonction permet de cartographier une vue d'un fichier dans l'espace d'adressage d'un processus appelant.
MapViewOfFileEx | LPVOID MapViewOfFileEx(HANDLE hFileMappingObject, DWORD dwDesiredAccess, DWORD dwFileOffsetHigh, DWORD dwFileOffsetLow, DWORD dwNumberOfBytesToMap, LPVOID lpBaseAddress); | kernel32.dll | Cette fonction permet de cartographier une vue d'un fichier dans l'espace d'adressage d'un processus appelant avec un adresse de mémoire spécifié.
MapVirtualKeyA | UINT MapVirtualKeyA(UINT uCode, UINT uMapType); | user32.dll | Cette fonction permet d'effectuer la conversion du code de touche virtuel en une valeur de caractère et un code de balayage (scan code) ou convertie le code de balayage en code de touche virtuel.
MapVirtualKeyExA | UINT MapVirtualKeyExA(UINT uCode, UINT uMapType, HKL dwhkl); | user32.dll | Cette fonction permet d'effectuer la conversion du code de touche virtuel en une valeur de caractère et un code de balayage (scan code) ou convertie le code de balayage en code de touche virtuel en utilisant des options supplémentaires.
MapVirtualKeyExW | UINT MapVirtualKeyExW(UINT uCode, UINT uMapType, HKL dwhkl); | user32.dll | Cette fonction permet d'effectuer la conversion du code de touche virtuel en une valeur de caractère et un code de balayage (scan code) ou convertie le code de balayage en code de touche virtuel en utilisant des options supplémentaires avec des paramètres de chaine de caractères étendues (Unicode).
MapVirtualKeyW | UINT MapVirtualKeyW(UINT uCode, UINT uMapType); | user32.dll | Cette fonction permet d'effectuer la conversion du code de touche virtuel en une valeur de caractère et un code de balayage (scan code) ou convertie le code de balayage en code de touche virtuel avec des paramètres de chaine de caractères étendues (Unicode).
MapWindowPoints | int MapWindowPoints(HWND hWndFrom, HWND hWndTo, LPPOINT lpPoints, UINT cPoints); | user32.dll | Cette fonction permet de convertir (cartographié) un ensemble de points d'une espace de coordonnées relatif d'une fenêtre vers une autre fenêtre d'espace de coordonnées relatif.
MaskBlt | BOOL MaskBlt(HDC hdcDest, int nXDest, int nYDest, int nWidth, int nHeight, HDC hdcSrc, int nXSrc, int nYSrc, HBITMAP hbmMask, int xMask, int yMask, DWORD dwRop); | gdi32.dll | Cette fonction permet de fusionner les données de couleur du Bitmap de la source et la destination en utilisant les opérations de masque et de raster spécifié.
mciSendStringA | MCIERROR mciSendStringA(LPCTSTR lpszCommand, LPTSTR lpszReturnString, UINT cchReturn, HANDLE hwndCallback); | winmm.dll | Cette fonction permet d'envoyer des commandes au pilote matériel MCI s'occupant du multimédia.
MenuItemFromPoint | UINT MenuItemFromPoint(HWND hWnd, HMENU hMenu, POINT ptScreen); | user32.dll | Cette fonction permet de demander quel est l'item de menu situé à l'emplacement spécifié, peut importe lequel.
MessageBeep | BOOL MessageBeep(UINT uType); | user32.dll | Cette fonction permet de faire jouer un de ses sons standard du système d'exploitation Windows.
MessageBoxA | int MessageBoxA(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType); | user32.dll | Cette fonction permet d'afficher une boite de dialogue contenant un message et des boutons d'actions.
MessageBoxExA | int MessageBoxExA(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType, WORD wLanguageId); | user32.dll | Cette fonction permet de créer, d'afficher et d'effectuer des opérations sur une boite de message.
MessageBoxExW | int MessageBoxExW(HWND hWnd, LPCWSTR lpText, LPCWSTR lpCaption, UINT uType, WORD wLanguageId); | user32.dll | Cette fonction permet de créer, d'afficher et d'effectuer des opérations sur une boite de message avec des paramètres de chaine de caractères étendues (Unicode).
MessageBoxIndirectA | BOOL MessageBoxIndirectA(LPMSGBOXPARAMS lpMsgBoxParams); | user32.dll | Cette fonction permet de créer, d'afficher et d'effectuer des opérations sur une boite de message à l'aide d'une structure de données.
MessageBoxIndirectW | BOOL MessageBoxIndirectW(MSGBOXPARAMSW lpMsgBoxParams); | user32.dll | Cette fonction permet de créer, d'afficher et d'effectuer des opérations sur une boite de message à l'aide d'une structure de données avec des paramètres de chaine de caractères étendues (Unicode).
MessageBoxW | int MessageBoxW(HWND hWnd, LPCWSTR lpText, LPCWSTR lpCaption, UINT uType); | user32.dll | Cette fonction permet d'afficher une boite de dialogue contenant un message et des boutons d'actions avec des paramètres de chaine de caractères étendues (Unicode).
ModifyMenuA | BOOL ModifyMenuA(HMENU hMnu, UINT uPosition, UINT uFlags, UINT uIDNewItem, LPCTSTR lpNewItem); | user32.dll | Cette fonction permet d'effectuer une modification sur un item de menu existant.
ModifyMenuW | BOOL ModifyMenuW(HMENU hMnu, UINT uPosition, UINT uFlags, UINT uIDNewItem, LPCWSTR lpNewItem); | user32.dll | Cette fonction permet d'effectuer une modification sur un item de menu existant avec des paramètres de chaine de caractères étendues (Unicode).
ModifyWorldTransform | BOOL ModifyWorldTransform(HDC hdc, CONST XFORM * lpXform, DWORD iMode); | gdi32.dll | Cette fonction permet de changer la transformation mondiale pour le périphérique de contexte utilisant le mode spécifié.
mouse_event | VOID mouse_event(DWORD dwFlags, DWORD dx, DWORD dy, DWORD cButtons, DWORD dwExtraInfo); | user32.dll | Cette fonction permet de provoquer un événement de déplacement de pointeur de souris ou d'actions de bouton de souris.
MoveFileA | BOOL MoveFileA(LPCTSTR lpExistingFileName, LPCTSTR lpNewFileName); | kernel32.dll | Cette fonction permet de renommer ou déplacer un fichier ou un répertoire
MoveFileExA | BOOL MoveFileExA(LPCTSTR lpExistingFileName, LPCTSTR lpNewFileName, DWORD dwFlags); | kernel32.dll | Cette fonction permet de renommer un fichier existant.
MoveFileExW | BOOL MoveFileExW(LPCWSTR source, LPCWSTR dest, DWORD flag); | kernel32.dll | Cette fonction permet de renommer un fichier existant avec un paramètre de chaine de caractères étendue (Unicode).
MoveFileW | BOOL MoveFileW(LPCWSTR lpExistingFileName, LPCWSTR lpNewFileName); | kernel32.dll | Cette fonction permet de renommer ou déplacer un fichier ou un répertoire avec un paramètre de chaine de caractères étendue (Unicode).
MoveToEx | BOOL MoveToEx(HDC hdc, int X, int Y, LPPOINT lpPoint); | gdi32.dll | Cette fonction permet de changer la position du pointeur graphique
MoveWindow | BOOL MoveWindow(HWND hWnd, int X, int Y, int nWidth, int nHeight, BOOL bRepaint); | user32.dll | Cette fonction permet de changer l'emplacement d'une fenêtre d'application
MsgWaitForMultipleObjects | DWORD MsgWaitForMultipleObjects(DWORD nCount, LPHANDLE pHandles, BOOL fWaitAll, DWORD dwMilliseconds, DWORD dwWakeMask); | user32.dll | Cette fonction permet de retourner un objet spécifié suite à un état, un type spécifié étant disponible de l'entrée de la file d'attente d'un processus léger ou intervalle de dépassement de délai.
MsgWaitForMultipleObjectsEx | DWORD MsgWaitForMultipleObjectsEx(DWORD nCount, const HANDLE *pHandles, DWORD dwMilliseconds, DWORD dwWakeMask, DWORD dwFlags); | user32.dll | Cette fonction permet de retourner un objet spécifié suite à un état, un type spécifié étant disponible de l'entrée de la file d'attente d'un processus léger ou intervalle de dépassement de délai avec des paramètres supplémentaires.
MulDiv | int MulDiv(int nNumber, int nNumerator, int nDenominator); | kernel32.dll | Cette fonction permet de diviser le produit de deux entiers long
MultiByteToWideChar | int MultiByteToWideChar(UINT CodePage, DWORD dwFlags, LPCSTR lpMultiByteStr, int cchMultiByte, LPWSTR lpWideCharStr, int cchWideChar); | kernel32.dll | Cette fonction permet de convertir une chaine de caractères ASCII en chaine de caractères Unicode.
MultinetGetConnectionPerformanceA | DWORD MultinetGetConnectionPerformanceA(LPNETRESOURCE lpNetResource, LPNETCONNECTINFOSTRUCT lpNetConnectInfoStruct); | mpr.dll | Cette fonction permet de demander les informations à propos des performances attendu d'une connexion utilisé pour l'accès à une ressource de réseau.
MultinetGetConnectionPerformanceW | DWORD MultinetGetConnectionPerformanceW(LPNETRESOURCEW lpNetResource, LPNETCONNECTINFOSTRUCT lpNetConnectInfoStruct); | mpr.dll | Cette fonction permet de demander les informations à propos des performances attendu d'une connexion utilisé pour l'accès à une ressource de réseau avec des paramètres de chaine de caractères étendues (Unicode).
NotifyChangeEventLog | BOOL NotifyChangeEventLog( HANDLE hEventLog, HANDLE hEvent ); | advapi32.dll | Cette fonction permet de recevoir des avertissements d'application lorsqu'un événement écrit dans le fichier de journal de bord spécifié.
ObjectCloseAuditAlarmA | BOOL ObjectCloseAuditAlarmA( LPCTSTR SubsystemName, LPVOID HandleId, BOOL GenerateOnClose ); | advapi32.dll | Cette fonction permet de générer des messages dans le journal de bord quand un identificateur Handle d'objet est supprimé.
ObjectCloseAuditAlarmW | BOOL ObjectCloseAuditAlarmW(LPCWSTR SubsystemName, LPVOID HandleId, BOOL GenerateOnClose); | advapi32.dll | Cette fonction permet de généré des messages dans le journal de bord quand un identificateur Handle d'objet est supprimé avec des paramètres de chaine de caractères étendue (Unicode).
ObjectDeleteAuditAlarmA | BOOL ObjectDeleteAuditAlarmA(LPCSTR SubsystemName, LPVOID HandleId, BOOL GenerateOnClose); | advapi32.dll | Cette fonction permet de supprimer un message dans le journal de bord.
ObjectDeleteAuditAlarmW | BOOL ObjectDeleteAuditAlarmW(LPCWSTR SubsystemName,LPVOID HandleId,BOOL GenerateOnClose); | advapi32.dll | Cette fonction permet de supprimer un message dans le journal de bord avec des paramètres de chaine de caractères étendue (Unicode).
ObjectOpenAuditAlarmA | BOOL ObjectOpenAuditAlarmA( LPCTSTR SubsystemName, LPVOID HandleId, LPTSTR ObjectTypeName, LPTSTR ObjectName, PSECURITY_DESCRIPTOR pSecurityDescriptor, HANDLE ClientToken, DWORD DesiredAccess, DWORD GrantedAccess, PPRIVILEGE_SET Privileges, BOOL ObjectCreation, BOOL AccessGranted, LPBOOL GenerateOnClose ); | advapi32.dll | Cette fonction permet de générer des messages dans le journal de bord quand une application client tente d'obtenir l'accès à un objet ou dans créer un nouveau.
ObjectOpenAuditAlarmW | BOOL ObjectOpenAuditAlarmW(LPCWSTR SubsystemName, LPVOID HandleId, LPWSTR ObjectTypeName, LPWSTR ObjectName, PSECURITY_DESCRIPTOR pSecurityDescriptor, HANDLE ClientToken, DWORD DesiredAccess, DWORD GrantedAccess, PPRIVILEGE_SET Privileges, BOOL ObjectCreation, BOOL AccessGranted, LPBOOL GenerateOnClose ); | advapi32.dll | Cette fonction permet de générer des messages dans le journal de bord quand une application client tente d'obtenir l'accès à un objet ou dans créer un nouveau avec des paramètres de chaine de caractères étendue (Unicode).
ObjectPrivilegeAuditAlarmA | BOOL ObjectPrivilegeAuditAlarmA( LPCTSTR lpszSubsystem, LPVOID lpvHandleId, HANDLE hClientToken, DWORD dwDesiredAccess, PPRIVILEGE_SET pps, BOOL fAccessGranted ); | advapi32.dll | Cette fonction permet de générer un message dans le journal de bord quand un résultat d'un client est effectué avec des opérations de prévilège sur un serveur d'application déjà ouvert avec l'identificateur Handle de l'objet.
ObjectPrivilegeAuditAlarmW | BOOL ObjectPrivilegeAuditAlarmW( LPCWSTR SubsystemName, LPVOID HandleId, HANDLE ClientToken, DWORD DesiredAccess, PPRIVILEGE_SET Privileges, BOOL AccessGranted ); | advapi32.dll | Cette fonction permet de générer un message dans le journal de bord quand un résultat d'un client est effectué avec des opérations de prévilège sur un serveur d'application déjà ouvert avec l'identificateur Handle de l'objet avec des paramètres de chaine de caractères étendue (Unicode).
OemKeyScan | DWORD OemKeyScan(WORD wOemChar); | user32.dll | Cette fonction permet de demander le code ASCII OEM entre 0 et FFh situé dans les codes de balayage et des touches états (Ctrl, Alt et Shift).
OemToCharA | BOOL OemToCharA(LPCSTR lpszOemStr, LPTSTR lpszStr); | user32.dll | Cette fonction permet d'effectuer la conversion d'une chaine de caractères contenant un ensemble de caractères OEM vers du ANSI ou du Unicode.
OemToCharBuffA | BOOL OemToCharBuffA(LPCSTR lpOemStr, LPTSTR lpszStr, DWORD cchString); | user32.dll | Cette fonction permet d'effectuer la conversion d'un certain nombre de caractères OEM vers du ANSI ou du Unicode.
OemToCharBuffW | BOOL OemToCharBuffW(LPCSTR lpOemStr, LPWSTR lpszStr, DWORD cchString); | user32.dll | Cette fonction permet d'effectuer la conversion d'un certain nombre de caractères OEM vers du ANSI ou du Unicode avec des paramètres de chaine de caractères étendues (Unicode).
OemToCharW | BOOL OemToCharW(LPCSTR lpszOemStr, LPWSTR lpszStr); | user32.dll | Cette fonction permet d'effectuer la conversion d'une chaine de caractères contenant un ensemble de caractères OEM vers du ANSI ou du Unicode avec des paramètres de chaine de caractères étendues (Unicode).
OffsetClipRgn | int OffsetClipRgn(HDC hdc, int nXOffset, int nYOffset); | gdi32.dll | Cette fonction permet de déplacer la région de clip dans le périphérique spécifié et par le déplacement spécifié.
OffsetRect | BOOL OffsetRect(LPRECT lprc, int x, int y); | user32.dll | Cette fonction permet de déplacer le rectangle spécifié avec le nombre de déplacements spécifié.
OffsetRgn | int OffsetRgn(HRGN hrgn, int nXOffset, int nYOffset); | gdi32.dll | Cette fonction permet de déplacer la région spécifié par le déplacement spécifié.
OffsetViewportOrgEx | BOOL OffsetViewportOrgEx(HDC hdc, int nXOffset, int nYOffset, LPPOINT lpPoint); | gdi32.dll | Cette fonction permet de modifier le point de vue d'origine relatif pour un périphérique de contexte en utilisant le déplacement horizontal et vertical spécifié.
OffsetWindowOrgEx | BOOL OffsetWindowOrgEx(HDC hdc, int nXOffset, int nYOffset, LPPOINT lpPoint); | gdi32.dll | Cette fonction permet de modifier le point de vue de la fenêtre d'origine relatif de la valeur courante.
OpenBackupEventLogA | HANDLE OpenBackupEventLogA( LPCTSTR lpszUNCServerName, LPCTSTR lpszFileName ); | advapi32.dll | Cette fonction permet d'ouvir un identificateur Handle pour un événement de copie de sauvegarde du journal de bord.
OpenBackupEventLogW | HANDLE OpenBackupEventLogW( LPCWSTR lpUNCServerName, LPCWSTR lpFileName ); | advapi32.dll | Cette fonction permet d'ouvir un identificateur Handle pour un événement de copie de sauvegarde du journal de bord avec des paramètres de chaine de caractères étendue (Unicode).
OpenClipboard | BOOL OpenClipboard(HWND hwnd); | user32.dll | Cette fonction permet de commencer un traitement avec le presse-papier.
OpenDesktopA | HDESK OpenDesktopA(LPCTSTR lpszDesktopName, DWORD dwFlags, BOOL fInherit, DWORD dwDesiredAccess); | user32.dll | Cette fonction permet de demander le Handle d'un bureau existant.
OpenDesktopW | HDESK OpenDesktopW(LPWSTR lpszDesktopName, DWORD dwFlags, BOOL fInherit, DWORD dwDesiredAccess); | user32.dll | Cette fonction permet de demander le Handle d'un bureau existant avec des paramètres de chaine de caractères étendues (Unicode).
OpenEventA | HANDLE OpenEventA(DWORD fdwAccess, BOOL fInherit, LPCTSTR lpszEventName); | kernel32.dll | Cette fonction permet de demander un Handle dans objet existant d'événement nommé.
OpenEventW | HANDLE OpenEventW(DWORD dwDesiredAccess, BOOL bInheritHandle, LPCWSTR lpName); | kernel32.dll | Cette fonction permet de demander un Handle dans objet existant d'événement nommé avec des paramètres de chaines de caractères étendue (Unicode).
OpenEventLogA | HANDLE OpenEventLogA( LPCTSTR lpszUNCServerName, LPCTSTR lpszSourceName ); | advapi32.dll | Cette fonction permet d'ouvrir un identificateur Handle d'un événement de journal de bord.
OpenEventLogW | HANDLE OpenEventLogW( LPCWSTR uncname, LPCWSTR source ); | advapi32.dll | Cette fonction permet d'ouvrir un identificateur Handle d'un événement de journal de bord avec des paramètres de chaine de caractères étendue (Unicode).
OpenFile | HFILE OpenFile( LPCSTR lpszFile, LPOFSTRUCT lpOpenBuff, UINT fuMode ); | kernel32.dll | Cette fonction permet de créer, d'ouvrir, de réouvrir ou de supprimer un fichier.
OpenFileMappingA | HANDLE OpenFileMappingA(DWORD dwDesiredAccess, BOOL bInheritHandle, LPCTSTR lpName); | kernel32.dll | Cette fonction permet d'ouvrir un objet de cartographie de fichier nommé.
OpenFileMappingW | HANDLE OpenFileMappingW(DWORD access, BOOL inherit, LPCWSTR name); | kernel32.dll | Cette fonction permet d'ouvrir un objet de cartographie de fichier nommé avec des paramètres de chaine de caractères étendue (Unicode).
OpenIcon | BOOL OpenIcon(HWND hwnd); | user32.dll | Cette fonction permet de passer en mode actif l'icône d'une fenêtre.
OpenInputDesktop | HDESK OpenInputDesktop(DWORD dwFlags, BOOL fInherit, DWORD dwDesiredAccess); | user32.dll | Cette fonction permet de demander le Handle d'un bureau reçevant une entrée utilisateur.
OpenMutexA | HANDLE OpenMutexA(DWORD dwDesiredAccess, BOOL bInheritHandle, LPCTSTR lpName); | kernel32.dll | Cette fonction permet d'ouvrir un objet Mutex nommé.
OpenMutexW | HANDLE OpenMutexW(DWORD dwDesiredAccess, BOOL bInheritHandle, LPCWSTR lpName); | kernel32.dll | Cette fonction permet d'ouvrir un objet Mutex nommé avec des paramètres de chaine de caractères étendue (Unicode).
OpenPrinterA | BOOL OpenPrinterA(LPTSTR pPrinterName, LPHANDLE phPrinter, LPPRINTER_DEFAULTS pDefault); | winspool.drv | Cette fonction permet d'ouvrir la communication avec une imprimante.
OpenProcess | HANDLE OpenProcess(DWORD dwDesiredAccess, BOOL bInheritHandle, DWORD dwProcessId); | kernel32.dll | Cette fonction permet d'ouvrir un accès de jeton associé avec un processus.
OpenProcessToken | BOOL OpenProcessToken( HANDLE hProcess, DWORD dwAccessMask, PHANDLE phToken ); | advapi32.dll | Cette fonction permet d'ouvrir un accès de jeton associé avec un processus.
OpenSemaphoreA | HANDLE OpenSemaphoreA(DWORD fdwAccess, BOOL fInherit, LPCTSTR lpszSemName); | kernel32.dll | Cette fonction permet de retourner le Handle d'objet existant de sémaphore nommé.
OpenSemaphoreW | HANDLE OpenSemaphoreW(DWORD dwDesiredAccess, BOOL bInheritHandle, LPCWSTR lpName); | kernel32.dll | Cette fonction permet de retourner le Handle d'objet existant de sémaphore nommé avec des paramètres de chaine de caractères étendue (Unicode).
OpenThreadToken | BOOL OpenThreadToken( HANDLE hThread, DWORD dwAccessMask, BOOL fOpenAsSelf, PHANDLE phToken ); | advapi32.dll | Cette fonction permet d'ouvrir un accès de jeton associé avec un processus léger.
OpenWaitableTimerA | HANDLE OpenWaitableTimerA(DWORD dwDesiredAccess, BOOL bInheritHandle, LPCTSTR lpTimerName); | kernel32.dll | Cette fonction permet d'ouvrir une minuterie d'attente existante nommé.
OpenWaitableTimerW | HANDLE OpenWaitableTimerW(DWORD dwDesiredAccess, BOOL bInheritHandle, LPCWSTR lpTimerName); | kernel32.dll | Cette fonction permet d'ouvrir une minuterie d'attente existante nommé avec des paramètres de chaine de caractères étendue (Unicode).
OpenWindowStationA | HWINSTA OpenWindowStationA(LPCTSTR lpszWinStaName, BOOL fInherit, DWORD dwDesiredAccess); | user32.dll | Cette fonction permet de demander le Handle d'une fenêtre de station existante.
OpenWindowStationW | HWINSTA OpenWindowStationW(LPWSTR lpszWinStaName, BOOL fInherit, DWORD dwDesiredAccess); | user32.dll | Cette fonction permet de demander le Handle d'une fenêtre de station existante avec des paramètres de chaine de caractères étendues (Unicode).
OutputDebugStringA | VOID OutputDebugStringA(LPCTSTR lpszOutputString); | kernel32.dll | Cette fonction permet d'envoyer une chaine de caractères au débogueur de l'application courante.
OutputDebugStringW | VOID OutputDebugStringW(LPCWSTR str); | kernel32.dll | Cette fonction permet d'envoyer une chaine de caractères au débogueur de l'application courante avec des paramètres de chaine de caractères étendue (Unicode).
PackDDElParam | LONG PackDDElParam(UINT uMsg, UINT uLow, UINT uHigh); | user32.dll | Cette fonction permet de compacté la valeur DDE spécifié dans une structure interne utilisé dans le partage de données DDE entre le traitement de processus.
PaintDesktop | BOOL WINAPI PaintDesktop(HDC hdc); | user32.dll | Cette fonction permet de remplir le bureau avec une couleur ou un papier-peint.
PaintRgn | BOOL PaintRgn(HDC hdc, HRGN hrgn); | gdi32.dll | Cette fonction permet de remplir une région, en utilisant la brosse courante, pour un périphérique de contexte spécifié.
PatBlt | BOOL PatBlt(HDC hdc, int nXLeft, int nYLeft, int nWidth, int nHeight, DWORD dwRop); | gdi32.dll | Cette fonction permet de créer une palette de bits pour un périphérique spécifié.
PathAddBackslashA | LPSTR PathAddBackslashA(LPSTR lpszPath); | shlwapi.dll | Cette fonction permet d'ajouter une barre oblique inversé à la fin du chemin de répertoire spécifié.
PathAddExtension | BOOL PathAddExtension(LPTSTR pszPath, LPCTSTR pszExtension); | shlwapi.dll | Cette fonction permet d'ajouter une extension à nom de fichiers.
PathAppendA | BOOL PathAppendA(LPSTR lpszPath, LPCSTR lpszAppend); | shlwapi.dll | Cette fonction permet d'ajouter un chemin de répertoire à la fin d'un autre chemin de répertoire.
PathBuildRootA | LPSTR PathBuildRootA(LPSTR lpszPath, int drive); | shlwapi.dll | Cette fonction permet de créer un répertoire racine pour unité disque spécifié.
PathCanonicalizeA | BOOL PathCanonicalizeA( LPSTR lpszBuf, LPCSTR lpszPath); | shlwapi.dll | Cette fonction permet de transformer un chemin de répertoire de sa forme absolue à relative, c'est-à-dire de remplacer des "../" pour atteinte le répertoire en court par exemple.
PathCombine | LPTSTR PathCombine(LPTSTR lpszDest, LPCTSTR lpszDir, LPCTSTR lpszFile); | shlwapi.dll | Cette fonction permet d'ajouter un chemin de répertoire à la fin d'un autre chemin de répertoire.
PathCommonPrefix | int PathCommonPrefix(LPCTSTR pszFile1, LPCTSTR pszFile2, LPTSTR pszPath); | shlwapi.dll | Cette fonction permet d'effectuer la comparaison de deux répertoires et de vérifier les préfixes communs.
PathCompactPathA | BOOL PathCompactPathA( HDC hDC, LPSTR lpszPath, UINT dx); | shlwapi.dll | Cette fonction permet de réduire la longueur en pixel d'un chemin de répertoire en remplaçant la partie trop longue par des abréviations pour qu'il soit affichable à l'écran par exemple.
PathCompactPathExA | BOOL PathCompactPathExA(LPSTR lpszDest,LPCSTR lpszPath, UINT cchMax, DWORD dwFlags); | shlwapi.dll | Cette fonction permet de réduire la longueur en caractères d'un chemin de répertoire en remplaçant la partie trop longue par des abréviations pour qu'il soit affichable à l'écran par exemple.
PathCreateFromUrlA | HRESULT PathCreateFromUrlA( LPCTSTR pszUrl, LPTSTR pszPath, LPDWORD pcchPath, DWORD dwReserved); | shlwapi.dll | Cette fonction permet de convertir un URL sous sa forme du système d'exploitation de style DOS.
PathFindOnPathA | BOOL PathFindOnPathA(LPTSTR pszFile, LPCTSTR *ppszOtherDirs); | shlwapi.dll | Cette fonction permet d'effectuer la recherche d'un nom de fichier dans un répertoire.
PathGetDriveNumberA | int PathGetDriveNumberA(LPCTSTR lpsz); | shlwapi.dll | Cette fonction permet de demander le numéro de l'unité disque contenu dans un chemin de répertoire.
PathIsDirectoryEmptyA | BOOL PathIsDirectoryEmptyA(LPCTSTR pszPath); | shlwapi.dll | Cette fonction permet de demander si le répertoire spécifier est vide.
PathIsSystemFolder | BOOL PathIsSystemFolder(LPCTSTR pszPath, DWORD dwAttrb); | shlwapi.dll | Cette fonction permet de demander si le répertoire spécifier à l'attribut de dossier système.
PathIsUNCA | BOOL PathIsUNCA(LPCTSTR pszPath); | shlwapi.dll | Cette fonction permet de demander si le répertoire est un répertoire UNC (Universal Naming Convention) valide.
PathIsUNCServerA | BOOL PathIsUNCServerA( LPCTSTR pszPath); | shlwapi.dll | Cette fonction permet de demander si le répertoire est un répertoire UNC (Universal Naming Convention) valide pour un serveur.
PathIsURLA | BOOL PathIsURLA(LPCTSTR pszPath); | shlwapi.dll | Cette fonction permet de demander si le répertoire est un répertoire URL valide.
PathToRegion | HRGN PathToRegion(HDC hdc); | gdi32.dll | Cette fonction permet de créer un chemin vers une région sélectionné dans le périphérique de contexte spécifié.
PathUndecorateA | void PathUndecorateA(LPTSTR pszPath); | shlwapi.dll | Cette fonction permet d'illiminer les séquences à numéro d'un nom fichier.
PathUnmakeSystemFolderA | BOOL PathUnmakeSystemFolderA(LPTSTR pszPath); | shlwapi.dll | Cette fonction permet d'enlever l'attribut système d'un répertoire spécifié.
PeekConsoleInputA | BOOL PeekConsoleInputA(HANDLE hConsoleInput, PINPUT_RECORD pirBuffer, DWORD cInRecords, LPDWORD lpcRead); | kernel32.dll | Cette fonction permet d'effectuer la lecture des données du tampon d'entrée de la console spécifié sans retirer le contenu lue du tampon.
PeekConsoleInputW | BOOL PeekConsoleInputW(HANDLE hConsoleInput,PINPUT_RECORD pirBuffer,DWORD cInRecords,PDWORD lpcRead); | kernel32.dll | Cette fonction permet d'effectuer la lecture des données du tampon d'entrée de la console spécifié sans retirer le contenu lue du tampon avec des paramètres de chaine de caractères étendue (Unicode).
PeekMessageA | BOOL PeekMessageA(LPMSG lpMsg, HWND hWnd, UINT uMsgFilterMin, UINT uMsgFilterMax, UINT wRemoveMsg); | user32.dll | Cette fonction permet de poster un message dans une fenêtre de file d'attente de message et retourne sans attendre la correspondance à un processus de message.
PeekMessageW | BOOL PeekMessageW(LPMSG lpMsg, HWND hWnd, UINT uMsgFilterMin, UINT uMsgFilterMax, UINT wRemoveMsg); | user32.dll | Cette fonction permet de poster un message dans une fenêtre de file d'attente de message et retourne sans attendre la correspondance à un processus de message avec des paramètres de chaine de caractères étendue (Unicode).
PeekNamedPipe | BOOL PeekNamedPipe(HANDLE hPipe, LPVOID lpvBuffer, DWORD cbBuffer, LPDWORD lpcbRead, LPDWORD lpcbAvail, LPDWORD lpcbMessage); | kernel32.dll | Cette fonction permet de copier les données d'un tuyau nommé ou anonyme dans un tampon sans le retirer du tuyau.
Pie | BOOL Pie(HDC hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect, int nXRadial1, int nYRadial1, int nXRadial2, int nYRadial2); | gdi32.dll | Cette fonction permet de dessiner une pointe de tarte en effectuant un arc elliptique d'un centre et de deux points join par des lignes.
PlayEnhMetaFile | BOOL PlayEnhMetaFile(HDC hdc, HENHMETAFILE hemf, CONST RECT * lpRect); | gdi32.dll | Cette fonction permet d'afficher l'image entreposé dans le fichier méta de format étendue spécifié.
PlayEnhMetaFileRecord | BOOL PlayEnhMetaFileRecord(HDC hdc, LPHANDLETABLE lpHandletable, CONST ENHMETARECORD * lpEnhMetaRecord, UINT nHandles); | gdi32.dll | Cette fonction permet de jouer un enregistrement de fichier méta étendue par exécution de fonction GDI (Graphics Device Interface) identifié par l'enregistrement.
PlayMetaFile | BOOL PlayMetaFile(HDC hdc, HMETAFILE hmf); | gdi32.dll | Cette fonction permet de jouer le contenu d'un fichier méta de format Windows spécifié dans un périphérique spécifié.
PlayMetaFileRecord | BOOL PlayMetaFileRecord(HDC hdc, LPHANDLETABLE lpHandletable, LPMETARECORD lpMetaRecord, UINT nHandles); | gdi32.dll | Cette fonction permet de jouer un enregistrement d'un fichier méta de format Windows par exécution du GDI contenu dans l'enregistrement.
PlaySoundA | BOOL PlaySoundA(LPCSTR pszSound, HMODULE hmod, DWORD fdwSound); | winmm.dll | Cette fonction permet de faire jouer un fichier de son de format Wave (.WAV).
PlgBlt | BOOL PlgBlt(HDC hdcDest, CONST POINT * lpPoint, HDC hdcSrc, int nXSrc, int nYSrc, int nWidth, int nHeight, HBITMAP hbmMask, int xMask, int yMask); | gdi32.dll | Cette fonction permet d'effectuer un traitement de transfert de bloc de bits d'une donnée de bits de couleurs d'un rectangle spécifié dans une source de périphérique de contexte vers la destination de périphérique de contexte de parallélogramme spécifié.
PolyBezier | BOOL PolyBezier(HDC hdc, CONST POINT * lppt, DWORD cPoints); | gdi32.dll | Cette fonction permet de dessiner une ou plusieurs courbes de Bézier.
PolyBezierTo | BOOL PolyBezierTo(HDC hdc, CONST POINT * lppt, DWORD cCount); | gdi32.dll | Cette fonction permet de dessiner une ou plusieurs courbes de Bézier spécifié.
PolyDraw | BOOL PolyDraw(HDC hdc, CONST POINT * lppt, CONST BYTE * lpbTypes, int cCount); | gdi32.dll | Cette fonction permet de dessiner un ensemble de ligne de segments et de courbes de Bézier.
PolyPolygon | BOOL PolyPolygon(HDC hdc, CONST POINT *lpPoints, LPINT lpPolyCounts, int nCount); | gdi32.dll | Cette fonction permet de créer deux ou plusieurs polygone étant rempli par un mode de remplissage de polygone.
PolyTextOutA | BOOL PolyTextOutA(HDC hdc, CONST POLYTEXT * pptxt, int cStrings); | gdi32.dll | Cette fonction permet de dessiner une chaine de caractères en utilisant la police de caractères et les couleurs textes courante dans le périphérique de contexte spécifié.
PolyTextOutW | BOOL PolyTextOutW(HDC hdc, const POLYTEXTW* pptxt, INT cStrings); | gdi32.dll | Cette fonction permet de dessiner une chaine de caractères en utilisant la police de caractères et les couleurs textes courante dans le périphérique de contexte spécifié avec des paramètres de chaine de caractères étendues.
Polygon | BOOL Polygon(HDC hdc, CONST POINT *lpPoints, int nCount); | gdi32.dll | Cette fonction permet de dessiner un polygone de deux ou plusieurs points (sommets) connectés par des lignes.
Polyline | BOOL Polyline(HDC hdc, CONST POINT *lppt, int cPoints); | gdi32.dll | Cette fonction permet de dessiner un ensemble de segments de lignes, connecté par les points spécifiés.
PolylineTo | BOOL PolylineTo(HDC hdc, CONST POINT * lppt, DWORD cCount); | gdi32.dll | Cette fonction permet de dessiner une ou plusieurs lignes droite.
PostMessageA | BOOL PostMessageA(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'envoyer un message à un objet du système d'exploitation Windows.
PostMessageW | BOOL PostMessageW(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'envoyer un message à un objet du système d'exploitation Windows avec des paramètres de chaine de caractères étendues (Unicode).
PostQueuedCompletionStatus | BOOL PostQueuedCompletionStatus(HANDLE CompletionPort, DWORD dwNumberOfBytesTransferred, DWORD dwCompletionKey, LPOVERLAPPED lpOverlapped); | kernel32.dll | Cette fonction permet de poster une paquet d'achèvement d'entrée/sortie vers un port d'achèvement d'entrée/sortie.
PostQuitMessage | VOID PostQuitMessage(int nExitCode); | user32.dll | Cette fonction permet de poster un message à Windows afin d'indiquer que l'application reçoit une requête de terminaison d'exécution (quitte).
PostThreadMessageA | BOOL PostThreadMessageA(DWORD dwThreadId, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet de poster un message dans la file d'attente du processus léger spécifié et retourne sans attendre que le processus léger traite le message.
PostThreadMessageW | BOOL PostThreadMessageW(DWORD dwThreadId, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet de poster un message dans la file d'attente du processus léger spécifié et retourne sans attendre que le processus léger traite le message avec des paramètres de chaine de caractères étendues (Unicode).
PrepareTape | DWORD PrepareTape(HANDLE hDevice, DWORD dwOperation, BOOL bImmediate); | kernel32.dll | Cette fonction permet de préparer le ruban pour être accédé ou enlevé.
PrintDlgA | BOOL PrintDlgA(LPPRINTDLG lppd); | comdlg32.dll | Cette fonction permet d'afficher une boite de dialogue d'impression.
PrinterProperties | BOOL PrinterProperties(hwnd hwnd,HANDLE hPrinter); | winspool.drv | Cette fonction permet d'afficher une boite de dialogue de propriété de l'imprimante.
PrivilegeCheck | BOOL PrivilegeCheck( HANDLE hClientToken, PPRIVILEGE_SET pps, LPBOOL lpfResult ); | advapi32.dll | Cette fonction permet de tester le contexte de sécurité représenté par un accès de jeton spécifié contenu dans un prévilège spécifié.
PrivilegedServiceAuditAlarmA | BOOL PrivilegedServiceAuditAlarmA( LPCTSTR lpszSubsystem, LPCTSTR lpszService, HANDLE hClientToken, PPRIVILEGE_SET pps, BOOL fAccessGranted ); | advapi32.dll | Cette fonction permet de générer un message de journal de bord quand une opération de service de prévilège système s'effectue.
PrivilegedServiceAuditAlarmW | BOOL PrivilegedServiceAuditAlarmW(LPCWSTR SubsystemName, LPCWSTR ServiceName, HANDLE ClientToken, PPRIVILEGE_SET Privileges, BOOL AccessGranted ); | advapi32.dll | Cette fonction permet de générer un message de journal de bord quand une opération de service de prévilège système s'effectue avec des paramètres de chaine de caractères étendue (Unicode).
Process32First | BOOL WINAPI Process32First(HANDLE hSnapshot,LPPROCESSENTRY32 lppe); | kernel32.dll | Cette fonction permet de demander le premier processus provenant de la liste contenu dans une photo du système d'exploitation.
Process32Next | BOOL WINAPI Process32Next( HANDLE hSnapshot, LPPROCESSENTRY32 lppe); | kernel32.dll | Cette fonction permet de demander le processus suivant provenant de la liste contenu dans une photo du système d'exploitation.
PtInRect | BOOL PtInRect(CONST RECT *lprc, POINT pt); | user32.dll | Cette fonction permet de déterminer si le point spécifié est lié avec le rectangle spécifié.
PtInRegion | BOOL PtInRegion(HRGN hrgn, int X, int Y); | gdi32.dll | Cette fonction permet de demander si un point spécifié est dans une région spécifié.
PtVisible | BOOL PtVisible(HDC hdc, int X, int Y); | gdi32.dll | Cette fonction permet de demander si le point spécifié est dans la région clip d'un périphérique de contexte.
PulseEvent | BOOL PulseEvent(HANDLE hEvent); | kernel32.dll | Cette fonction permet de fournir une simple opération fixant l'état d'un objet d'événement spécifié et réinitialisant après qu'un délai d'attente de processus approprié s'est produit.
PurgeComm | BOOL PurgeComm(HANDLE hCommDev, DWORD fdwAction); | kernel32.dll | Cette fonction permet de débarrasser de tous les caractères d'un tampon de sortie ou d'entrée d'une ressource de communication spécifié.
PwdChangePasswordA | DWORD WINAPI PwdChangePasswordA(LPCSTR lpProvider, HWND hWnd, DWORD flags, LPCHANGEPWDINFOA info); | mpr.dll | Cette fonction permet de modifier le mot de passe de l'utilisateur ou d'un fournisseur du système d'exploitation.
QueryDosDeviceA | DWORD QueryDosDeviceA(LPCTSTR lpDeviceName, LPTSTR lpTargetPath, DWORD ucchMax); | kernel32.dll | Cette fonction permet à une application de demander des informations à propre d'un nom de périphérique DOS.
QueryDosDeviceW | DWORD QueryDosDeviceW(LPCWSTR lpDeviceName, LPCWSTR lpTargetPath, DWORD ucchMax); | kernel32.dll | Cette fonction permet à une application de demander des informations à propre d'un nom de périphérique DOS avec des paramètres de chaine de caractères étendue (Unicode).
QueryPerformanceCounter | BOOL QueryPerformanceCounter(LARGE_INTEGER *lpliPerformanceCount); | kernel32.dll | Cette fonction permet de demander la valeur actuel du compteur de haute performance de la machine.
QueryPerformanceFrequency | BOOL QueryPerformanceFrequency(LARGE_INTEGER *lpliPerformanceFreq); | kernel32.dll | Cette fonction permet de demander la valeur de la fréquence du compteur de haute performance de la machine.
QueueUserAPC | DWORD QueueUserAPC(PAPCFUNC pfnAPC, HANDLE hThread, ULONG_PTR dwData); | kernel32.dll | Cette fonction permet d'ajouter une objet de procédure d'appel désychronisée (APC) en mode utilisateur dans une file d'attente APC d'un processus léger spécifié.
RaiseException | VOID RaiseException(DWORD dwExceptionCode, DWORD dwExceptionFlags, DWORD cArguments, CONST DWORD * lpArguments); | kernel32.dll | Cette fonction permet de déclencher une exception dans le processus léger appelant.
RasEnumEntriesA | DWORD RasEnumEntriesA( LPTSTR reserved, LPTSTR lpszPhonebook, LPRASENTRYNAME lprasentryname, LPDWORD lpcb, LPDWORD lpcEntries ); | rasapi32.dll | Cette fonction permet de demander la liste de tous les noms d'entrées contenu dans le carnet pour les connexions téléphoniques à distance.
ReadConsoleA | BOOL ReadConsoleA(HANDLE hConsoleInput, LPVOID lpvBuffer, DWORD cchToRead, LPDWORD lpcchRead, LPVOID lpvReserved); | kernel32.dll | Cette fonction permet d'effectuer la lecture d'un caractère en provenance de la console.
ReadConsoleW | BOOL ReadConsoleW(HANDLE hConsoleInput, LPVOID lpBuffer, DWORD nNumberOfCharsToRead, LPDWORD lpNumberOfCharsRead, LPVOID lpReserved); | kernel32.dll | Cette fonction permet d'effectuer la lecture d'un caractère en provenance de la console avec des paramètres de chaine de caractères étendue (Unicode).
ReadConsoleInputA | BOOL ReadConsoleInputA(HANDLE hConsoleInput, PINPUT_RECORD pirBuffer, DWORD cInRecords, LPDWORD lpcRead); | kernel32.dll | Cette fonction permet d'effectuer la lecture de données du tampon d'entrée d'une console et retire les données du tampon.
ReadConsoleInputW | BOOL ReadConsoleInputW(HANDLE hConsoleInput, PINPUT_RECORD pirBuffer, DWORD cInRecords, LPDWORD lpcRead); | kernel32.dll | Cette fonction permet d'effectuer la lecture de données du tampon d'entrée d'une console et retire les données du tampon avec des paramètres de chaine de caractères étendue (Unicode).
ReadConsoleOutputA | BOOL ReadConsoleOutputA(HANDLE hConsoleOutput, PCHAR_INFO pchiDestBuffer, COORD coordDestBufferSize, COORD coordDestBufferCoord, PSMALL_RECT psrctSourceRect); | kernel32.dll | Cette fonction permet d'effectuer la lecture de données de caractère et de couleur d'attribut dans un bloc rectangulaire d'une cellule de caractères d'un tampon de console d'écran et écrire le résultat de ses données dans un tampon spécifié.
ReadConsoleOutputW | BOOL ReadConsoleOutputW(HANDLE hConsoleOutput, PCHAR_INFO pchiDestBuffer, COORD coordDestBufferSize, COORD coordDestBufferCoord, PSMALL_RECT psrctSourceRect); | kernel32.dll | Cette fonction permet d'effectuer la lecture de données de caractère et de couleur d'attribut dans un bloc rectangulaire d'une cellule de caractères d'un tampon de console d'écran et écrire le résultat de ses données dans un tampon spécifié avec des paramètres de chaine de caractères étendue (Unicode).
ReadConsoleOutputAttribute | BOOL ReadConsoleOutputAttribute(HANDLE hConsoleOutput, LPWORD lpwAttribute, DWORD cReadCells, COORD coordReadCoord, LPDWORD lpcNumberRead); | kernel32.dll | Cette fonction permet de copier le nombre spécifié dans la couleur d'attribut d'arrière-plan ou de premier plan d'une cellule consécutive d'un tampon de console d'écran en débutant à la position spécifié.
ReadConsoleOutputCharacterA | BOOL ReadConsoleOutputCharacterA(HANDLE hConsoleOutput, LPTSTR lpReadBuffer, DWORD cchRead, COORD coordReadCoord, LPDWORD lpcNumberRead); | kernel32.dll | Cette fonction permet de copier un nombre de caractères d'une cellule consécutif d'un tampon de console écran en débutant à la position spécifié.
ReadConsoleOutputCharacterW | BOOL ReadConsoleOutputCharacterW(HANDLE hConsoleOutput, LPCWSTR lpReadBuffer, DWORD cchRead, COORD coordReadCoord, LPDWORD lpcNumberRead); | kernel32.dll | Cette fonction permet de copier un nombre de caractères d'une cellule consécutif d'un tampon de console écran en débutant à la position spécifié avec des paramètres de chaine de caractères étendue (Unicode).
ReadDirectoryChangesW | BOOL ReadDirectoryChangesW( HANDLE hDirectory, LPVOID lpBuffer, DWORD nBufferLength, BOOL bWatchSubtree, DWORD dwNotifyFilter, LPDWORD lpBytesReturned, LPOVERLAPPED lpOverlapped, LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine ); | kernel32.dll | Cette fonction permet de demander les informations descriptives de changement ayant eu lieu dans le répertoire spécifié.
ReadEventLogA | BOOL ReadEventLogA( HANDLE hEventLog, DWORD dwReadFlags, DWORD dwRecordOffset, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, DWORD *pnBytesRead, DWORD *pnMinNumberOfBytesNeeded ); | advapi32.dll | Cette fonction permet de lire un nombre d'entrées spécifié dans un journal de bord des événements.
ReadEventLogW | BOOL ReadEventLogW( HANDLE hEventLog, DWORD dwReadFlags, DWORD dwRecordOffset, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, DWORD* pnBytesRead, DWORD* pnMinNumberOfBytesNeeded ); | advapi32.dll | Cette fonction permet de lire un nombre d'entrées spécifié dans un journal de bord des événements avec des paramètres de chaine de caractères étendue (Unicode).
ReadFile | BOOL ReadFile(HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped); | kernel32.dll | Cette fonction permet d'effectuer la lecture d'un fichier, en débutant à la position spécifié par le pointeur de fichier.
ReadFileEx | BOOL ReadFileEx(HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPOVERLAPPED lpOverlapped, LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine); | kernel32.dll | Cette fonction permet d'effectuer la lecture de données d'un fichier désychronisé.
ReadProcessMemory | BOOL ReadProcessMemory(HANDLE hProcess, LPCVOID lpBaseAddress, LPVOID lpBuffer, DWORD cbRead, LPDWORD lpNumberOfBytesRead); | kernel32.dll | Cette fonction permet d'effectuer la lecture de mémoire dans un processus spécifié.
RealizePalette | UINT RealizePalette(HDC hdc); | gdi32.dll | Cette fonction permet de cartographier l'entrée de palette de la palette logique courante de la palette système.
Rectangle | BOOL Rectangle(HDC hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect); | gdi32.dll | Cette fonction permet d'afficher un rectangle.
RectInRegion | BOOL RectInRegion(HRGN hrgn, CONST RECT *lprc); | gdi32.dll | Cette fonction permet de demander si une partie du rectangle spécifié est dans une des limites d'une région spécifié.
RectVisible | BOOL RectVisible(HDC hdc, CONST RECT *lprc); | gdi32.dll | Cette fonction permet de demander n'importe quel partie d'un rectangle spécifié dans une région de clip d'un périphérique de contexte spécifié.
RedrawWindow | BOOL RedrawWindow(HWND hwnd, CONST RECT *lprcUpdate, HRGN hrgnUpdate, UINT afuRedraw); | user32.dll | Cette fonction permet de mettre à jour le rectangle ou la région spécifié de la région de la fenêtre client.
RegCloseKey | LONG RegCloseKey( HKEY hKey ); | advapi32.dll | Cette fonction permet de fermer le Handle de la clef de registre spécifié.
RegConnectRegistryA | LONG RegConnectRegistryA( LPTSTR lpszComputerName, HKEY hKey, PHKEY phkResult ); | advapi32.dll | Cette fonction permet d'établir une connexion avec un registre de Handle prédéfinie ou autre ordinateur.
RegConnectRegistryW | LSTATUS RegConnectRegistryW( LPCWSTR lpMachineName, HKEY hKey, PHKEY phkResult ); | advapi32.dll | Cette fonction permet d'établir une connexion avec un registre de Handle prédéfinie ou autre ordinateur avec des paramètres de chaine de caractères étendue (Unicode).
RegCreateKeyA | LONG RegCreateKeyA( HKEY hKey, LPCTSTR lpszSubKey, PHKEY phkResult ); | advapi32.dll | Cette fonction permet de créer la clef de registre spécifié. Si la clef existe dans les registres, la fonction l'ouvre.
RegCreateKeyW | LSTATUS RegCreateKeyW( HKEY hkey, LPCWSTR lpSubKey, PHKEY phkResult ); | advapi32.dll | Cette fonction permet de créer la clef de registre spécifié avec des paramètres de chaine de caractères étendue (Unicode). Si la clef existe dans les registres, la fonction l'ouvre.
RegCreateKeyExA | LONG RegCreateKeyExA( HKEY hKey, LPCTSTR lpszSubKey, DWORD dwReserved, LPTSTR lpszClass, DWORD fdwOptions, REGSAM samDesired, LPSECURITY_ATTRIBUTES lpSecurityAttributes, PHKEY phkResult, LPDWORD lpdwDisposition ); | advapi32.dll | Cette fonction permet de créer une clef de registre spécifié avec des systèmes de la famille NT. Si la clef existe dans les registres, la fonction l'ouvre.
RegCreateKeyExW | LSTATUS RegCreateKeyExW( HKEY hkey, LPCWSTR name, DWORD reserved, LPWSTR class, DWORD options, REGSAM access, SECURITY_ATTRIBUTES* sa, PHKEY retkey, LPDWORD dispos ); | advapi32.dll | Cette fonction permet de créer une clef de registre spécifié avec des systèmes de la famille NT avec des paramètres de chaine de caractères étendue (Unicode). Si la clef existe dans les registres, la fonction l'ouvre.
RegDeleteKeyA | LONG RegDeleteKeyA( HKEY hKey, LPCTSTR lpszSubKey ); | advapi32.dll | Cette fonction permet de supprimer la clef de registre spécifié.
RegDeleteKeyW | LSTATUS RegDeleteKeyW( HKEY hkey, LPCWSTR name ); | advapi32.dll | Cette fonction permet de supprimer la clef de registre spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegDeleteValueA | LONG RegDeleteValueA( HKEY hKey, LPTSTR lpszValue ); | advapi32.dll | Cette fonction permet de supprimer la valeur du nom spécifié dans la clef de la base de registre.
RegDeleteValueW | LSTATUS RegDeleteValueW( HKEY hkey, LPCWSTR name ); | advapi32.dll | Cette fonction permet de supprimer la valeur du nom spécifié dans la clef de la base de registre avec des paramètres de chaine de caractères étendue (Unicode).
RegEnumKeyA | LONG RegEnumKeyA( HKEY hKey, DWORD iSubKey, LPTSTR lpszName, DWORD cchName ); | advapi32.dll | Cette fonction permet d'énuméré les sous-clefs d'une clef de registre ouverte spécifié.
RegEnumKeyW | LSTATUS RegEnumKeyW( HKEY hkey, DWORD index, LPWSTR name, DWORD name_len ); | advapi32.dll | Cette fonction permet d'énuméré les sous-clefs d'une clef de registre ouverte spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegEnumKeyExA | LONG RegEnumKeyExA( HKEY hKey, DWORD iSubkey, LPTSTR lpszName, LPDWORD lpcchName, LPDWORD lpdwReserved, LPTSTR lpszClass, LPDWORD lpcchClass, PFILETIME lpftLastWrite ); | advapi32.dll | Cette fonction permet d'énuméré les sous-clefs d'une clef de registre ouverte spécifié avec des systèmes de la famille NT.
RegEnumKeyExW | LSTATUS RegEnumKeyExW( HKEY hkey, DWORD index, LPWSTR name, LPDWORD name_len, LPDWORD reserved, LPWSTR class, LPDWORD class_len, FILETIME* ft ); | advapi32.dll | Cette fonction permet d'énuméré les sous-clefs d'une clef de registre ouverte spécifié avec des systèmes de la famille NT avec des paramètres de chaine de caractères étendue (Unicode).
RegEnumValueA | LONG RegEnumValueA( HKEY hKey, DWORD iValue, LPTSTR lpszValue, LPDWORD lpcchValue, LPDWORD lpdwReserved, LPDWORD lpdwType, LPBYTE lpbData, LPDWORD lpcbData ); | advapi32.dll | Cette fonction permet d'énuméré les valeurs pour la clef de registre ouverte spécifié.
RegEnumValueW | LSTATUS RegEnumValueW( HKEY hkey, DWORD index, LPWSTR value, LPDWORD val_count, LPDWORD reserved, LPDWORD type, LPBYTE data, LPDWORD count ); | advapi32.dll | Cette fonction permet d'énuméré les valeurs pour la clef de registre ouverte spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegFlushKey | LONG RegFlushKey(HKEY hKey); | advapi32.dll | Cette fonction permet d'écrire tous les attributs de la clef de la base de registre ouverte spécifié.
RegGetKeySecurity | LSTATUS RegGetKeySecurity( HKEY hkey, SECURITY_INFORMATION SecurityInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor, LPDWORD lpcbSecurityDescriptor ); | advapi32.dll | Cette fonction permet de copier le descripteur de sécurité de la clef de registre ouverte spécifié.
RegisterClassA | ATOM RegisterClassA(CONST WNDCLASS *lpwc); | user32.dll | Cette fonction permet d'effectuer l'enregistrement d'une classe de fenêtre subséquente aux appels des fonctions CreateWindow ou CreateWindowEx.
RegisterClassExA | ATOM RegisterClassExA(CONST WNDCLASSEX FAR *lpwcx); | user32.dll | Cette fonction permet d'effectuer l'enregistrement d'une classe de fenêtre subséquente aux appels des fonctions CreateWindow ou CreateWindowEx avec des options supplémentaires.
RegisterClassExW | ATOM RegisterClassExW(CONST WNDCLASSEXW FAR *lpwcx); | user32.dll | Cette fonction permet d'effectuer l'enregistrement d'une classe de fenêtre subséquente aux appels des fonctions CreateWindow ou CreateWindowEx avec des options supplémentaires et des paramètres de chaine de caractères étendues (Unicode).
RegisterClassW | ATOM RegisterClassW(CONST WNDCLASSW *lpwc); | user32.dll | Cette fonction permet d'effectuer l'enregistrement d'une classe de fenêtre subséquente aux appels des fonctions CreateWindow ou CreateWindowEx avec des paramètres de chaine de caractères étendues (Unicode).
RegisterClipboardFormatA | UINT RegisterClipboardFormatA(LPCTSTR lpszFormat); | user32.dll | Cette fonction permet d'enregistrer un nouveau format de presse-papier.
RegisterClipboardFormatW | UINT RegisterClipboardFormatW(LPCWSTR lpszFormat); | user32.dll | Cette fonction permet d'enregistrer un nouveau format de presse-papier avec des paramètres de chaine de cararactères étendues (Unicode).
RegisterDeviceNotificationA | HDEVNOTIFY RegisterDeviceNotificationA( HANDLE hRecipient, LPVOID NotificationFilter, DWORD Flags ); | user32.dll | Cette fonction permet d'enregistrer un périphérique ou un type de périphérique pour que la fenêtre reçoivent des avertissements de changements.
RegisterHotKey | BOOL RegisterHotKey(HWND hwnd, int idHotKey, UINT fuModifiers, UINT uVirtKey); | user32.dll | Cette fonction permet de définir l'état des touches de combinaison (Alt, Ctrl, Shift) pour le processus léger courant.
RegisterServiceProcess | DWORD RegisterServiceProcess(DWORD dwProcessId,DWORD dwType); | kernel32.dll | Cette fonction permet de cacher un programme de facon à ce qu'il ne soit pas afficher lorsqu'on appuis sur Ctrl+Alt+Delete pour voir la liste des programmes dans le Gestionnaire de tâche.
RegisterWindowMessageA | UINT RegisterWindowMessageA(LPCTSTR lpsz); | user32.dll | Cette fonction permet de définir une nouvelle fenêtre de message garantissant qu'elle est unique au système.
RegisterWindowMessageW | UINT RegisterWindowMessageW(LPCWSTR lpsz); | user32.dll | Cette fonction permet de définir une nouvelle fenêtre de message garantissant qu'elle est unique au système avec des paramètres de chaine de caractères étendues (Unicode).
RegLoadKeyA | LONG RegLoadKeyA( HKEY hKey, LPCTSTR lpszSubKey, LPCTSTR lpszFile ); | advapi32.dll | Cette fonction permet de créer une sous-clef dans «HKEY_USER» ou «HKEY_LOCAL_MACHINE» et d'entreposer les informations d'enregistrement dans le fichier spécifié d'une sous-clef.
RegLoadKeyW | LSTATUS RegLoadKeyW( HKEY hkey, LPCWSTR subkey, LPCWSTR filename ); | advapi32.dll | Cette fonction permet de créer une sous-clef dans «HKEY_USER» ou «HKEY_LOCAL_MACHINE» et d'entreposer les informations d'enregistrement dans le fichier spécifié d'une sous-clef avec des paramètres de chaine de caractères étendue (Unicode).
RegNotifyChangeKeyValue | LONG RegNotifyChangeKeyValue( HKEY hKey, BOOL fWatchSubTree, DWORD fdwNotifyFilter, HANDLE hEvent, BOOL fAsync ); | advapi32.dll | Cette fonction permet d'indiquer quand une clef de registre, ou élément rattaché à celle-ci, a changé.
RegOpenKeyA | LONG RegOpenKeyA( HKEY hKey, LPCTSTR lpszSubKey, PHKEY phkResult ); | advapi32.dll | Cette fonction permet d'ouvrir une clef spécifié dans une base de registre.
RegOpenKeyW | LSTATUS RegOpenKeyW( HKEY hkey, LPCWSTR name, PHKEY retkey ); | advapi32.dll | Cette fonction permet d'ouvrir une clef spécifié dans une base de registre avec des paramètres de chaine de caractères étendue (Unicode).
RegOpenKeyExA | LONG RegOpenKeyExA( HKEY hKey, LPCTSTR lpszSubKey, DWORD dwReserved, REGSAM samDesired, PHKEY phkResult ); | advapi32.dll | Cette fonction permet d'ouvrir une clef spécifié dans une base de registre.
RegOpenKeyExW | LSTATUS RegOpenKeyExW( HKEY hkey, LPCWSTR name, DWORD reserved, REGSAM access, PHKEY retkey ); | advapi32.dll | Cette fonction permet d'ouvrir une clef spécifié dans une base de registre avec des paramètres de chaine de caractères étendue (Unicode).
RegQueryInfoKeyA | LONG RegQueryInfoKeyA( HKEY hKey, LPTSTR lpszClass, LPDWORD lpcchClass, LPDWORD lpdwReserved, LPDWORD lpcSubKeys, LPDWORD lpcchMaxSubkey, LPDWORD lpcchMaxClass, LPDWORD lpcValues, LPDWORD lpcchMaxValueName, LPDWORD lpcbMaxValueData, LPDWORD lpcbSecurityDescriptor, PFILETIME lpftLastWriteTime ); | advapi32.dll | Cette fonction permet de demander les informations d'une clef de registre spécifié.
RegQueryInfoKeyW | LSTATUS RegQueryInfoKeyW( HKEY hkey, LPWSTR class, LPDWORD class_len, LPDWORD reserved, LPDWORD subkeys, LPDWORD max_subkey, LPDWORD max_class, LPDWORD values, LPDWORD max_value, LPDWORD max_data, LPDWORD security, FILETIME* modif ); | advapi32.dll | Cette fonction permet de demander les informations d'une clef de registre spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegQueryMultipleValuesA | LONG RegQueryMultipleValuesA( HKEY hKey, PVALENT val_list, DWORD num_vals, LPTSTR lpValueBuf, LPDWORD ldwTotsize ); | advapi32.dll | Cette fonction permet de demander le type et la donnée pour une liste de noms de valeur associé avec une clef de registre ouverte.
RegQueryMultipleValuesW | LSTATUS RegQueryMultipleValuesW( HKEY hkey, PVALENTW val_list, DWORD num_vals, LPWSTR lpValueBuf, LPDWORD ldwTotsize ); | advapi32.dll | Cette fonction permet de demander le type et la donnée pour une liste de noms de valeur associé avec une clef de registre ouverte avec des paramètres de chaine de caractères étendue (Unicode).
RegQueryValueA | LONG RegQueryValueA( HKEY hKey, LPCTSTR lpszSubKey, LPTSTR lpszValue, PLONG pcbValue ); | advapi32.dll | Cette fonction permet de demander la valeur associé avec une valeur non-nommé pour la clef du registre spécifié.
RegQueryValueW | LSTATUS RegQueryValueW( HKEY hkey, LPCWSTR name, LPWSTR data, LPLONG count ); | advapi32.dll | Cette fonction permet de demander la valeur associé avec une valeur non-nommé pour la clef du registre spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegQueryValueExA | LONG RegQueryValueExA( HKEY hKey, LPTSTR lpszValueName, LPDWORD lpdwReserved, LPDWORD lpdwType, LPBYTE lpbData, LPDWORD lpcbData ); | advapi32.dll | Cette fonction permet de demander la valeur associé avec une valeur non-nommé pour la clef du registre spécifié avec des systèmes de la famille NT.
RegQueryValueExW | LSTATUS RegQueryValueExW ( HKEY hkey, LPCWSTR name, LPDWORD reserved, LPDWORD type, LPBYTE data, LPDWORD count ); | advapi32.dll | Cette fonction permet de demander la valeur associé avec une valeur non-nommé pour la clef du registre spécifié avec des systèmes de la famille NT avec des paramètres de chaine de caractères étendue (Unicode).
RegReplaceKeyA | LONG RegReplaceKeyA( HKEY hKey, LPCTSTR lpSubKey, LPCTSTR lpNewFile, LPCTSTR lpOldFile ); | advapi32.dll | Cette fonction permet de remplacer un fichier de copie de sauvegarde d'un clef et tous les sous-clef d'une autre fichier.
RegReplaceKeyW | LSTATUS RegReplaceKeyW( HKEY hkey, LPCWSTR lpSubKey, LPCWSTR lpNewFile, LPCWSTR lpOldFile ); | advapi32.dll | Cette fonction permet de remplacer un fichier de copie de sauvegarde d'un clef et tous les sous-clef d'une autre fichier avec des paramètres de chaine de caractères étendue (Unicode).
RegRestoreKeyA | LONG RegRestoreKeyA( HKEY hKey, LPCTSTR lpszFile, DWORD fdw ); | advapi32.dll | Cette fonction permet de lire des informations registre dans un fichier spécifié et de copier la clef spécifié.
RegRestoreKeyW | LSTATUS RegRestoreKeyW( HKEY hkey, LPCWSTR lpFile, DWORD dwFlags ); | advapi32.dll | Cette fonction permet de lire des informations registre dans un fichier spécifié et de copier la clef spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegSaveKeyA | LONG RegSaveKeyA( HKEY hKey, LPCTSTR lpszFile, LPSECURITY_ATTRIBUTES lpsa ); | advapi32.dll | Cette fonction permet de sauvegarder tous les clefs, sous-clefs et les valeurs spécifié dans un nouveau fichier.
RegSaveKeyW | LSTATUS RegSaveKeyW ( HKEY hkey, LPCWSTR file, LPSECURITY_ATTRIBUTES sa ); | advapi32.dll | Cette fonction permet de sauvegarder tous les clefs, sous-clefs et les valeurs spécifié dans un nouveau fichier avec des paramètres de chaine de caractères étendue (Unicode).
RegSetKeySecurity | LONG RegSetKeySecurity( HKEY hKey, SECURITY_INFORMATION si, PSECURITY_DESCRIPTOR psd ); | advapi32.dll | Cette fonction permet fixer la sécurité d'une clef de registre ouvert.
RegSetValueA | LONG RegSetValueA( HKEY hKey, LPCTSTR lpSubKey, DWORD dwType, LPCTSTR lpData, DWORD cbData ); | advapi32.dll | Cette fonction permet d'associer une valeur avec une clef spécifié.
RegSetValueW | LSTATUS RegSetValueW ( HKEY hkey, LPCWSTR name, DWORD type, LPCWSTR data, DWORD count ); | advapi32.dll | Cette fonction permet d'associer une valeur avec une clef spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegSetValueExA | LONG RegSetValueExA( HKEY hKey, LPCTSTR lpValueName, DWORD Reserved, DWORD dwType, CONST BYTE * lpData, DWORD cbData ); | advapi32.dll | Cette fonction permet d'entreposer les données d'un champs de valeur d'une clef de registre ouvert.
RegSetValueExW | LSTATUS RegSetValueExW( HKEY hkey, LPCWSTR name, DWORD reserved, DWORD type, CONST BYTE* data, DWORD count ); | advapi32.dll | Cette fonction permet d'entreposer les données d'un champs de valeur d'une clef de registre ouvert avec des paramètres de chaine de caractères étendue (Unicode).
RegUnLoadKeyA | LONG RegUnLoadKeyA( HKEY hKey, LPCTSTR lpszSubKey ); | advapi32.dll | Cette fonction permet de décharger la clef et sous-clefs de registre spécifié
RegUnLoadKeyW | LSTATUS RegUnLoadKeyW( HKEY hkey, LPCWSTR lpSubKey ); | advapi32.dll | Cette fonction permet de décharger la clef et sous-clefs de registre spécifié avec des paramètres de chaine de caractères étendue (Unicode).
RegisterEventSourceA | HANDLE RegisterEventSourceA( LPCTSTR lpszUNCServer, LPCTSTR lpszSource ); | advapi32.dll | Cette fonction permet de retourner l'identificateur Handle utilisé avec la fonction d'événement «ReportEvent» du journal de bord.
RegisterEventSourceW | HANDLE RegisterEventSourceW( LPCWSTR lpUNCServerName, LPCWSTR lpSourceName ); | advapi32.dll | Cette fonction permet de retourner l'identificateur Handle utilisé avec la fonction d'événement «ReportEvent» du journal de bord avec des paramètres de chaine de caractères étendue (Unicode).
ReleaseCapture | BOOL ReleaseCapture(VOID); | user32.dll | Cette fonction permet de relâcher la capture de souris et de restituer l'entrée de traitement normal.
ReleaseDC | int ReleaseDC(HWND hwnd, HDC hdc); | user32.dll | Cette fonction permet de relâcher un périphérique de contexte, de libérer son utilisation pour les autres applications.
ReleaseMutex | BOOL ReleaseMutex(HANDLE hMutex); | kernel32.dll | Cette fonction permet de relâcher la propriété de l'objet Mutex spécifié.
ReleaseSemaphore | BOOL ReleaseSemaphore(HANDLE hSemaphore, LONG cReleaseCount, LPLONG lplPreviousCount); | kernel32.dll | Cette fonction permet d'augmenter le compteur de l'objet de sémaphore spécifié par une quantité spécifié.
RemoveDirectoryA | BOOL RemoveDirectoryA(LPCTSTR lpszDir); | kernel32.dll | Cette fonction permet de supprimer un répertoire.
RemoveDirectoryW | BOOL RemoveDirectoryW(LPCWSTR lpszDir); | kernel32.dll | Cette fonction permet de supprimer un répertoire avec les paramètres de chaine de caractères étendues (Unicode).
RemoveDirectoryTransactedA | BOOL RemoveDirectoryTransactedA(LPCTSTR lpPathName, HANDLE hTransaction); | kernel32.dll | Cette fonction permet de supprimer un répertoire d'une opération de transaction.
RemoveDirectoryTransactedW | BOOL RemoveDirectoryTransactedW(LPCTWSTR lpPathName, HANDLE hTransaction); | kernel32.dll | Cette fonction permet de supprimer un répertoire d'une opération de transaction avec des paramètres de chaine de caractères étendue (Unicode).
RemoveFontResourceA | BOOL RemoveFontResourceA(LPCTSTR lpFileName); | gdi32.dll | Cette fonction permet d'enlever un ajout de ressource de police de caractères d'un fichier spécifié ou d'une table de police de caractères de Windows.
RemoveFontResourceW | BOOL RemoveFontResourceW(LPCWSTR lpFileName); | gdi32.dll | Cette fonction permet d'enlever un ajout de ressource de police de caractères d'un fichier spécifié ou d'une table de police de caractères de Windowsavec des paramètres de chaine de caractères étendues (Unicode).
RemoveMenu | BOOL RemoveMenu(HMENU hmenu, UINT uItem, UINT fuFlags); | user32.dll | Cette fonction permet de supprimer un item de menu déroulant.
RemovePropA | HANDLE RemovePropA(HWND hwnd, LPCTSTR lpsz); | user32.dll | Cette fonction permet d'enlever une entrée de la liste de propriété de la fenêtre spécifié.
RemovePropW | HANDLE RemovePropW(HWND hwnd, LPCWSTR lpsz); | user32.dll | Cette fonction permet d'enlever une entrée de la liste de propriété de la fenêtre spécifié avec des paramètres de chaine de caractères étendues (Unicode).
ReplyMessage | BOOL ReplyMessage(LRESULT lResult); | user32.dll | Cette fonction permet de répondre à un message envoyé par la fonction SendMessage sans rendre le contrôle à la fonction ayant appelé SendMessage.
ReportEventA | BOOL ReportEventA( HANDLE hEventSource, WORD fwEventType, WORD fwCategory, DWORD IDEvent, PSID pUserSid, WORD cStrings, DWORD cbData, LPCTSTR *plpszStrings, LPVOID lpvData ); | advapi32.dll | Cette fonction permet d'écrire une entrée à la fin du journal de bord des événements spécifié.
ReportEventW | BOOL ReportEventW( HANDLE hEventLog, WORD wType, WORD wCategory, DWORD dwEventID, PSID lpUserSid, WORD wNumStrings, DWORD dwDataSize, LPCWSTR* lpStrings, LPVOID lpRawData ); | advapi32.dll | Cette fonction permet d'écrire une entrée à la fin du journal de bord des événements spécifié avec des paramètres de chaine de caractères étendue (Unicode).
ResetDCA | HDC ResetDCA(HDC hdc, CONST DEVMODE * lpInitData); | gdi32.dll | Cette fonction permet de mettre à jour le périphérique de contexte, en se basant sur les informations de la structure spécifié.
ResetDCW | HDC ResetDCW(HDC hdc,const DEVMODEW * lpInitData); | gdi32.dll | Cette fonction permet de mettre à jour le périphérique de contexte, en se basant sur les informations de la structure spécifié avec des paramètres de chaine de caractères étendues (Unicode).
ResetEvent | BOOL ResetEvent(HANDLE hEvent); | kernel32.dll | Cette fonction permet de fixer l'état de l'objet d'événement spécifié dans un sans signal.
ResizePalette | BOOL ResizePalette(HPALETTE hpal, UINT nEntries); | gdi32.dll | Cette fonction permet de changer la taille de la palette logique spécifié.
RestoreDC | BOOL ResizePalette(HPALETTE hpal, UINT nEntries); | gdi32.dll | Cette fonction permet de restaurer un périphérique de contexte à l'état précédent.
RestoreMyDocsFolder | long RestoreMyDocsFolder(); | mydocs.dll | Cette fonction permet de recréer l'icône de «Mes Documents» sur le bureau du système d'exploitation Windows.
ResumeThread | DWORD ResumeThread(HANDLE hThread); | kernel32.dll | Cette fonction permet de décrémenter le compteur de processus léger suspendu.
ReuseDDElParam | LONG ReuseDDElParam(LONG lParam, UINT uMsgIn, UINT uMsgOut, UINT uLow, UINT uHigh); | user32.dll | Cette fonction permet d'allouer une application vers la réutilisation de paramètre DDE compacté spécifié et en réallouant un nouveau paquet spécifié.
RevertToSelf | BOOL RevertToSelf(VOID); | advapi32.dll | Cette fonction permet de terminé la personnification d'une application client.
RtlFillMemory | VOID RtlFillMemory(VOID* Destination, SIZE_T Length, BYTE Fill); | kernel32.dll | Cette fonction permet de remplir une zone de mémoire avec une valeur spécifié.
RtlMoveMemory | VOID RtlMoveMemory(VOID* Destination, CONST VOID* Source,SIZE_T Length); | kernel32.dll | Cette fonction permet de copier un bloc de mémoire vers un autre emplacement mémoire.
RoundRect | BOOL RoundRect(HDC hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect, int nWidth, int nHeight); | gdi32.dll | Cette fonction permet de dessiner un rectangle avec les coins arrondies, en utilisant le crayon courant.
SaveDC | int SaveDC(HDC hdc); | gdi32.dll | Cette fonction permet de sauvegarder l'état courant du périphérique de contexte courant en copiant les informations d'état (clip de région, sélection d'objets, et mode de cartographie) dans la pile de contexte.
ScaleViewportExtEx | BOOL ScaleViewportExtEx(HDC hdc, int Xnum, int Xdenom, int Ynum, int Ydenom, LPSIZE lpSize); | gdi32.dll | Cette fonction permet de modifier les extensions du point de vue relative avec des valeurs courante.
ScaleWindowExtEx | BOOL ScaleWindowExtEx(HDC hdc, int Xnum, int Xdenom, int Ynum, int Ydenom, LPSIZE lpSize); | gdi32.dll | Cette fonction permet de modifier les extensions de la fenêtre de périphérique de contexte en utilisant le ratio formé par le multiplicateur et le diviseur spécifié.
ScreenToClient | BOOL ScreenToClient(HWND hwnd, LPPOINT lpPoint); | user32.dll | Cette fonction permet de convertir les coordonnées d'écrans d'un point spécifié de l'écran à des coordonnées clients.
ScrollConsoleScreenBufferA | BOOL ScrollConsoleScreenBufferA(HANDLE hConsoleOutput, PSMALL_RECT psrctSourceRect, PSMALL_RECT psrctClipRect, COORD coordDestOrigin, PCHAR_INFO pchiFill); | kernel32.dll | Cette fonction permet de déplacer un bloc de données dans un tampon d'écran.
ScrollConsoleScreenBufferW | BOOL ScrollConsoleScreenBufferW(HANDLE hConsoleOutput, PSMALL_RECT psrctSourceRect, PSMALL_RECT psrctClipRect, COORD coordDestOrigin, PCHAR_INFO pchiFill); | kernel32.dll | Cette fonction permet de déplacer un bloc de données dans un tampon d'écran avec des paramètres de chaine de caractères étendues (Unicode).
ScrollDC | BOOL ScrollDC(HDC hdc, int dx, int dy, CONST RECT *lprcScroll, CONST RECT *lprcClip, HRGN hrgnUpdate, LPRECT lprcUpdate); | user32.dll | Cette fonction permet de faire défiler un rectangle d'un nombre de bits horizontal et vertical.
ScrollWindow | BOOL ScrollWindow(HWND hwnd, int dx, int dy, CONST RECT * lprcScroll, CONST RECT * lprcClip); | user32.dll | Cette fonction permet d'effectuer un défilement du contenu d'une région de fenêtre client.
ScrollWindowEx | int ScrollWindowEx(HWND hwnd, int dx, int dy, CONST RECT *lprcScroll, CONST RECT *lprcClip, HRGN hrgnUpdate, LPRECT lprcUpdate, UINT fuScroll); | user32.dll | Cette fonction permet d'effectuer un défilement du contenu d'une région de fenêtre client avec des options supplémentaires.
SearchPathA | DWORD SearchPathA(LPCTSTR lpszPath, LPCTSTR lpszFile, LPCTSTR lpszExtension, DWORD cchReturnBuffer, LPTSTR lpszReturnBuffer, LPTSTR *plpszFilePart); | kernel32.dll | Cette fonction permet d'effectuer une recherche dans le fichier spécifié.
SearchPathW | DWORD SearchPathW(LPCWSTR path, LPCWSTR name, LPCWSTR ext, DWORD buflen, LPWSTR buffer, LPWSTR* lastpart); | kernel32.dll | Cette fonction permet d'effectuer une recherche dans le fichier spécifié avec des paramètres de chaine de caractères étendues (Unicode).
SearchTreeForFile | BOOL SearchTreeForFile(PCTSTR RootPath, PCTSTR InputPathName,PTSTR OutputPathBuffer); | imagehlp.dll | Cette fonction permet d'effectuer la recherche d'un fichier dans un arbre de répertoire.
SelectClipPath | BOOL SelectClipPath(HDC hdc, int iMode); | gdi32.dll | Cette fonction permet de sélectionner le chemin courant dans la région de capture d'un périphérique de contexte en combinant la nouvelle région avec n'importe quel région de capture existante par utilisation de mode spécifié.
SelectClipRgn | int SelectClipRgn(HDC hdc, HRGN hrgn); | gdi32.dll | Cette fonction permet de sélectionner une région spécifié et la capture de région courant pour un périphérique de contexte courant.
SelectObject | HGDIOBJ SelectObject(HDC hdc, HGDIOBJ hgdiobj); | gdi32.dll | Cette fonction permet de sélectionner un objet dans le périphérique de contexte spécifié.
SelectPalette | HPALETTE SelectPalette(HDC hdc, HPALETTE hpal, BOOL bForceBackground); | gdi32.dll | Cette fonction permet de sélectionner la palette logique dans le périphérique de contexte donnée.
SendDlgItemMessageA | LONG SendDlgItemMessageA(HWND hwndDlg, int idControl, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'envoyer un message à un contrôle de boite de dialogue.
SendDlgItemMessageW | LONG SendDlgItemMessageW(HWND hwndDlg, int idControl, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'envoyer un message à un contrôle de boite de dialogue avec des paramètres de chaine de caractères étendues (Unidcode).
SendMessageA | LRESULT SendMessageA(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message à une fenêtre où à un objet d'une fenêtre.
SendMessageCallbackA | BOOL SendMessageCallbackA(HWND hwnd, UINT uMsg, WPARAM wParam, PARAM lParam, SENDASYNCPROC lpResultCallBack, DWORD dwData); | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message spécifié vers une ou des fenêtres.
SendMessageCallbackW | BOOL SendMessageCallbackW(HWND hwnd, UINT uMsg, WPARAM wParam, PARAM lParam, SENDASYNCPROC lpResultCallBack, DWORD dwData); | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message spécifié vers une ou des fenêtres avec des paramètres de chaine de caractères étendues (Unicode).
SendMessageTimeoutA | LRESULT SendMessageTimeoutA(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam, UINT fuFlags, UINT uTimeout, LPDWORD lpdwResult); | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message avec un dépassement de délai spécifié vers une ou des fenêtres.
SendMessageTimeoutW | LRESULT SendMessageTimeoutW(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam, UINT fuFlags, UINT uTimeout, LPDWORD lpdwResult); | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message avec un dépassement de délai spécifié vers une ou des fenêtres avec des paramètres de chaine de caractères étendues (Unicode).
SendMessageW | LRESULT SendMessageW(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message à une fenêtre où à un objet d'une fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
SendNotifyMessageA | BOOL SendNotifyMessageA(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message d'avertissement spécifié vers une fenêtre.
SendNotifyMessageW | BOOL SendNotifyMessageW(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); | user32.dll | Cette fonction permet d'effectuer l'envoi d'un message d'avertissement spécifié vers une fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
SetAbortProc | int SetAbortProc(HDC hdc, ABORTPROC lpAbortProc); | gdi32.dll | Cette fonction permet de fixer la procédure d'application définit par le programmeur pour alloué un travail d'impression afin d'être annuler durant sa tamporisation dans le tampon d'impression.
SetAclInformation | BOOL SetAclInformation( PACL pAcl, LPVOID lpvAclInfo, DWORD cbAclInfo, ACL_INFORMATION_CLASS aclic ); | advapi32.dll | Cette fonction permet de fixer les informations à propos de la liste de contrôle d'accès (ACL).
SetActiveWindow | HWND SetActiveWindow(HWND hwnd); | user32.dll | Cette fonction permet de rendre le plus haut niveau d'une fenêtre spécifié en une fenêtre active.
SetArcDirection | int SetArcDirection(HDC hdc, int ArcDirection); | gdi32.dll | Cette fonction permet de fixer la direction du dessinage pour être utilisé dans les fonctions d'arc et de rectangle.
SetBitmapBits | LONG SetBitmapBits(HBITMAP hbmp, DWORD cBytes, CONST VOID *lpBits); | gdi32.dll | Cette fonction permet de fixer l'ensemble de bits d'un Bitmap spécifié avec les valeurs de bits spécifié.
SetBitmapDimensionEx | BOOL SetBitmapDimensionEx(HBITMAP hBitmap, int nWidth, int nHeight, LPSIZE lpSize); | gdi32.dll | Cette fonction permet de fixer la taille souhaité d'un Bitmap, dans une unité de mesure de 0,01 millimètre.
SetBkColor | COLORREF SetBkColor(HDC hdc, COLORREF crColor); | gdi32.dll | Cette fonction permet de fixer la couleur de l'arrière-plan de la couleur spécifié.
SetBkMode | int SetBkMode(HDC hdc, int iBkMode); | gdi32.dll | Cette fonction permet de fixer le mode d'arrière-plan spécifié.
SetBoundsRect | UINT SetBoundsRect(HDC hdc, CONST RECT *lprcBounds, UINT flags); | gdi32.dll | Cette fonction permet de contrôler l'accumulation d'informations de limite rectangulaire d'un périphérique de contexte.
SetBrushOrgEx | BOOL SetBrushOrgEx(HDC hdc, int nXOrg, int nYOrg, LPPOINT lppt); | gdi32.dll | Cette fonction permet de fixer l'origine de la brosse GDI étant associé avec la prochaine brosse d'une application sélectionné dans le périphérique de contexte spécifié.
SetCapture | HWND SetCapture(HWND hwnd); | user32.dll | Cette fonction permet de fixer la capture de la souris dans la fenêtre spécifié.
SetCaretBlinkTime | BOOL SetCaretBlinkTime(UINT wMSeconds); | user32.dll | Cette fonction permet de fixer le taux de clignotement du caret.
SetCaretPos | BOOL SetCaretPos(int nX, int nY); | user32.dll | Cette fonction permet de fixer la position d'un caret.
SetClassLongA | DWORD SetClassLongA(HWND hwnd, int nIndex, LONG lNewVal); | user32.dll | Cette fonction permet de fixer des valeurs d'informations en 32 bits sur une classe.
SetClassLongW | DWORD SetClassLongW(HWND hwnd, int nIndex, LONG lNewVal); | user32.dll | Cette fonction permet de fixer des valeurs d'informations en 32 bits sur une classe avec des paramètres de chaine de caractères étendues (Unicode).
SetClassWord | WORD SetClassWord(HWND hwnd, int nIndex, WORD wNewWord); | user32.dll | Cette fonction permet de fixer la valeur d'un mot dans le déplacement spécifié de la classe de mémoire supplémentaire de la classe de fenêtre à laquelle la fenêtre appartient.
SetClipboardData | HANDLE SetClipboardData(UINT uFormat, HANDLE hData); | user32.dll | Cette fonction permet de fixer des données dans le presse-papier.
SetClipboardViewer | HWND SetClipboardViewer(HWND hwnd); | user32.dll | Cette fonction permet d'ajouter une fenêtre donnée à la chaine de fenêtre ayant un avertissement si le contenu du presse-papier a changé.
SetColorAdjustment | BOOL SetColorAdjustment(HDC hdc, CONST COLORADJUSTMENT * lpca); | gdi32.dll | Cette fonction permet de fixer les valeurs de couleurs d'ajustements pour un périphérique de contexte utilisant les valeurs spécifiés.
SetColorSpace | BOOL SetColorSpace(HDC hdc, HCOLORSPACE hColorSpace); | gdi32.dll | Cette fonction permet de fixer l'espace de couleur du périphérique de contexte spécifié en définissant la fin des points d'un espace RVB (RGB) logique dans l'espace CIE XYZ.
SetCommBreak | BOOL SetCommBreak(HANDLE hCommDev); | kernel32.dll | Cette fonction permet de suspendre la transmission de caractères pour un périphérique de communications spécifié et place la ligne de transmission dans un état d'arrêt jusqu'à ce que la fonction ClearCommBreak soit appelée.
SetCommConfig | BOOL SetCommConfig(HANDLE hCommDev, LPBYTE lpCC, DWORD dwSize); | kernel32.dll | Cette fonction permet de fixer la configuration courante dans un périphérique de communication.
SetCommMask | BOOL SetCommMask(HANDLE hCommDev, DWORD fdwEvtMask); | kernel32.dll | Cette fonction permet de spécifier un ensemble d'événement être surveillé par un périphérique de communication.
SetCommState | BOOL SetCommState(HANDLE hCommDev, LPDCB lpdcb); | kernel32.dll | Cette fonction permet de configurer un périphérique de communication en accord avec bloc de contrôle de périphérique (DCB) spécifié.
SetCommTimeouts | BOOL SetCommTimeouts(HANDLE hCommDev, LPCOMMTIMEOUTS lpctmo); | kernel32.dll | Cette fonction permet de fixer les paramètres de dépassement de délai pour tous les opérations de lecture ou d'écriture dans un périphérique de communication spécifié.
SetComputerNameA | BOOL SetComputerNameA(LPCTSTR lpszName); | kernel32.dll | Cette fonction permet de fixer le nom de l'ordinateur pour le système d'exploitation Windows.
SetComputerNameW | BOOL SetComputerNameW(LPCWSTR lpComputerName); | kernel32.dll | Cette fonction permet de fixer le nom de l'ordinateur pour le système d'exploitation Windows avec des paramètres de chaine de caractères étendues (Unicode).
SetConsoleActiveScreenBuffer | BOOL SetConsoleActiveScreenBuffer(HANDLE hConsoleOutput); | kernel32.dll | Cette fonction permet de fixer le tampon d'écran spécifié devant être actuellement affiché dans le tampon de la console d'écran.
SetConsoleCP | BOOL SetConsoleCP(UINT IDCodePage); | kernel32.dll | Cette fonction permet de fixer l'entrée de code de page utilisé par la console associé avec le processus appelant.
SetConsoleCtrlHandler | BOOL SetConsoleCtrlHandler(PHANDLER_ROUTINE pHandlerRoutine, BOOL fAdd); | kernel32.dll | Cette fonction permet d'ajouter un d'enlever une définition d'application de la fonction HandlerRoutine de la liste des fonctions de gestionnaire pour un processus appelant.
SetConsoleCursorInfo | BOOL SetConsoleCursorInfo(HANDLE hConsoleOutput, PCONSOLE_CURSOR_INFO pcci); | kernel32.dll | Cette fonction permet de fixer la taille et la visibilité du curseur dans le tampon de la console d'écran spécifié.
SetConsoleCursorPosition | BOOL SetConsoleCursorPosition( HANDLE hConsoleOutput, COORD coordCursor ); | kernel32.dll | Cette fonction permet de fixer la position du curseur pour l'affichage sur la console de texte.
SetConsoleMode | BOOL SetConsoleMode(HANDLE hConsole, DWORD fdwMode); | kernel32.dll | Cette fonction permet de fixer le mode d'entrée du tampon d'entrée de la console ou du mode de sortie d'un tampon de console d'écran.
SetConsoleOutputCP | BOOL SetConsoleOutputCP(UINT IDCodePage); | kernel32.dll | Cette fonction permet de fixer le code de page de sortie utilisé par la console associé avec le processus appelant.
SetConsoleScreenBufferSize | BOOL SetConsoleScreenBufferSize(HANDLE hConsoleOutput, COORD coordSize); | kernel32.dll | Cette fonction permet de changer la taille d'un tampon de console d'écran spécifié.
SetConsoleTextAttribute | BOOL SetConsoleTextAttribute(HANDLE hConsoleOutput, WORD wAttr); | kernel32.dll | Cette fonction permet de fixer les attributs (couleur de fond et d'écriture) pour l'affichage sur la console de texte. C'est l'équivalent d'un octet d'attribut dans un écran de texte matériel.
SetConsoleTitleA | BOOL SetConsoleTitleA(LPTSTR lpszTitle); | kernel32.dll | Cette fonction permet de fixer le titre de la barre de titre de la fenêtre d'application.
SetConsoleTitleW | BOOL SetConsoleTitleW(LPCWSTR title); | kernel32.dll | Cette fonction permet de fixer le titre de la barre de titre de la fenêtre d'application avec des paramètres de chaine de caractères étendues (Unicode).
SetConsoleWindowInfo | BOOL SetConsoleWindowInfo(HANDLE hConsoleOutput, BOOL fAbsolute, PSMALL_RECT psrctWindowRect); | kernel32.dll | Cette fonction permet de fixer la taille courante et la position de la fenêtre du tampon de la console d'écran.
SetCurrentDirectoryA | BOOL SetCurrentDirectoryA(LPCTSTR lpPathName); | kernel32.dll | Cette fonction permet de fixer le répertoire courant du processus courant.
SetCurrentDirectoryW | BOOL SetCurrentDirectoryW(LPCWSTR lpPathName); | kernel32.dll | Cette fonction permet de fixer le répertoire courant du processus courant avec des paramètres de chaine de caractères étendues (Unicode).
SetCursor | HCURSOR SetCursor(HCURSOR hcur); | user32.dll | Cette fonction permet de fixer l'image du pointeur de la souris.
SetCursorPos | BOOL SetCursorPos(int X, int Y); | user32.dll | Cette fonction permet de fixer les coordonnées du pointeur de la souris.
SetDebugErrorLevel | VOID SetDebugErrorLevel(DWORD dwLevel); | user32.dll | Cette fonction permet de fxer le niveau d'erreur minimum dans chaque fenêtre étant généré par les événements de déboguage et passe celui-ci au débogueur.
SetDefaultCommConfigA | BOOL SetDefaultCommConfigA(LPCSTR lpszName, LPCOMMCONFIG lpCC, DWORD dwSize); | kernel32.dll | Cette fonction permet de fixer la configuration par défaut pour un périphérique de communication.
SetDefaultCommConfigW | BOOL SetDefaultCommConfigW(LPCWSTR lpszDevice, LPCOMMCONFIG lpCommConfig, DWORD dwSize); | kernel32.dll | Cette fonction permet de fixer la configuration par défaut pour un périphérique de communication avec des paramètres de chaine de caractères étendues (Unicode).
SetDeviceGammaRamp | BOOL SetDeviceGammaRamp(HDC hdc, LPVOID lpRamp); | gdi32.dll | Cette fonction permet de fixer la rampe gamma d'un panneau d'affichage de couleur directe.
SetDIBColorTable | UINT SetDIBColorTable(HDC hdc, UINT uStartIndex, UINT cEntries, RGBQUAD *pColors); | gdi32.dll | Cette fonction permet de fixer les valeurs de couleurs RVB (rouge, vert, bleu) dans une rangée de table de couleurs d'un périphérique de Bitmap indépendant (DIB) étant actuellement sélectionné dans un périphérique de contexte spécifié.
SetDIBits | int SetDIBits(HDC hdc, HBITMAP hbmp, UINT uStartScan, UINT cScanLines, CONST VOID * lpvBits, CONST BITMAPINFO * lpbmi, UINT fuColorUse); | gdi32.dll | Cette fonction permet de fixer le pixel dans un Bitmap compatible (DDB) en utilisant les données de couleur trouvé dans le DIB spécifié.
SetDIBitsToDevice | int SetDIBitsToDevice(HDC hdc, int XDest, int YDest, DWORD dwWidth, DWORD dwHeight, int XSrc, int YSrc, UINT uStartScan, UINT cScanLines, CONST VOID * lpvBits, CONST BITMAPINFO * lpbmi, UINT fuColorUse); | gdi32.dll | Cette fonction permet de fixer les bits d'un périphérique de Bitmap indépendant (DIB) directement dans un périphérique de surface.
SetDlgItemInt | BOOL SetDlgItemInt(HWND hwndDlg, int idControl, UINT uValue, BOOL fSigned); | user32.dll | Cette fonction permet de fixer le texte d'un contrôle donnée dans une boite de dialogue vers la chaine de caractères de représentation spécifiant la valeur entière.
SetDlgItemTextA | BOOL SetDlgItemTextA(HWND hwndDlg, int idControl, LPCTSTR lpsz); | user32.dll | Cette fonction permet de fixer le titre ou le texte d'un contrôle d'une boite de dialogue.
SetDlgItemTextW | BOOL SetDlgItemTextW(HWND hwndDlg, int idControl, LPCWSTR lpsz); | user32.dll | Cette fonction permet de fixer le titre ou le texte d'un contrôle d'une boite de dialogue avec des paramètres de chaine de caractères étendues (Unicode).
SetDoubleClickTime | BOOL SetDoubleClickTime(UINT uInterval); | user32.dll | Cette fonction permet de fixer le temps maximal autorisé pour que des clics sur les boutons de la souris soit considéré comme un double-clic.
SetEndOfFile | BOOL SetEndOfFile(HANDLE hFile); | kernel32.dll | Cette fonction permet de fixer la position du pointeur de fichier à la fin du fichier utilisant un Handle.
SetEnhMetaFileBits | HENHMETAFILE SetEnhMetaFileBits(UINT cbBuffer, CONST BYTE * lpData); | gdi32.dll | Cette fonction permet de créer un fichier méta de format étendue, basé en mémoire, de données fournit.
SetEnvironmentVariableA | BOOL SetEnvironmentVariableA(LPCTSTR lpszName, LPCTSTR lpszValue); | kernel32.dll | Cette fonction permet de fixer la valeur d'une variable d'environnement du système d'exploitation.
SetEnvironmentVariableW | BOOL SetEnvironmentVariableW(LPCWSTR lpszName, LPCWSTR lpszValue); | kernel32.dll | Cette fonction permet de fixer la valeur d'une variable d'environnement du système d'exploitation avec des paramètres de chaine de caractères étendues (Unicode).
SetErrorMode | UINT SetErrorMode(UINT fuErrorMode); | kernel32.dll | Cette fonction permet de contrôler comment le système d'exploitation gère les types sévères dans les erreurs sérieuses.
SetEvent | BOOL SetEvent(HANDLE hEvent); | kernel32.dll | Cette fonction permet de fixer l'état de l'objet d'événement spécifié par un signal.
SetFileApisToANSI | VOID SetFileApisToANSI(VOID); | kernel32.dll | Cette fonction permet de faire provoquer, à une série de fonctions de fichiers Win32, l'utilisation d'un ensemble de code de page de caractères ANSI.
SetFileApisToOEM | VOID SetFileApisToOEM(VOID); | kernel32.dll | Cette fonction permet de faire provoquer, à une série de fonctions de fichiers Win32, l'utilisation d'un ensemble de code de page de caractères OEM.
SetFileAttributesA | BOOL SetFileAttributesA(LPCTSTR lpFileName, DWORD dwFileAttributes); | kernel32.dll | Cette fonction permet de fixer les attributs d'un fichier ou d'un répertoire.
SetFileAttributesW | BOOL SetFileAttributesW(LPCWSTR lpFileName, DWORD dwFileAttributes); | kernel32.dll | Cette fonction permet de fixer les attributs d'un fichier ou d'un répertoire avec des paramètres de chaine de caractères étendues (Unicode).
SetFilePointer | DWORD SetFilePointer(HANDLE hFile, LONG lDistanceToMove, PLONG lpDistanceToMoveHigh, DWORD dwMoveMethod); | kernel32.dll | Cette fonction permet de déplacer un pointeur de ficher dans un fichier ouvert.
SetFileSecurityA | BOOL SetFileSecurityA( LPCTSTR lpszFile, SECURITY_INFORMATION si, PSECURITY_DESCRIPTOR psd ); | advapi32.dll | Cette fonction permet de fixer la sécurité d'un objet de fichier ou d'un répertoire.
SetFileSecurityW | BOOL SetFileSecurityW( LPCWSTR lpFileName, SECURITY_INFORMATION RequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor ); | advapi32.dll | Cette fonction permet de fixer la sécurité d'un objet de fichier ou d'un répertoire avec des paramètres de chaine de caractères étendue (Unicode).
SetFileTime | BOOL SetFileTime(HANDLE hFile, CONST FILETIME * lpftCreation, CONST FILETIME * lpftLastAccess, CONST FILETIME * lpftLastWrite); | kernel32.dll | Cette fonction permet de fixer la date et l'heure de la création, du dernière accès et de la dernière modification d'un fichier.
SetFocus | HWND SetFocus(HWND hwnd); | user32.dll | Cette fonction permet de fixer le focus d'entrée de la fenêtre spécifié.
SetForegroundWindow | BOOL SetForegroundWindow(HWND hwnd); | user32.dll | Cette fonction permet de mettre le processus léger étant créer pour la fenêtre spécifié dans une fenêtre active ou de premier plan.
SetGraphicsMode | int SetGraphicsMode(HDC hdc, int iMode); | gdi32.dll | Cette fonction permet de fixer le mode graphique pour le périphérique de contexte spécifié.
SetHandleCount | UINT SetHandleCount(UINT cHandles); | kernel32.dll | Cette fonction permet de changer le nombre de fichier Handle disponible pour un processus.
SetHandleInformation | BOOL SetHandleInformation(HANDLE hObject, DWORD dwMask, DWORD dwFlags); | kernel32.dll | Cette fonction permet de fixer certaines propriétés d'un objet Handle.
SetICMMode | int SetICMMode(HDC hdc, int fICM); | gdi32.dll | Cette fonction permet d'activer ou désactiver la correspondance de couleur d'image pour le périphérique de contexte spécifié.
SetICMProfileA | BOOL SetICMProfileA(HDC hdc, LPTSTR lpFileName); | gdi32.dll | Cette fonction permet de fixer la couleur de profile pour le périphérique de contexte spécifié.
SetICMProfileW | BOOL SetICMProfileW(HDC hdc, LPWSTR lpFileName); | gdi32.dll | Cette fonction permet de fixer la couleur de profile pour le périphérique de contexte spécifié avec des paramètres de chaine de caractères étendues (Unicode).
SetJobA | BOOL SetJobA(HANDLE hPrinter, DWORD dwJob, DWORD dwLevel, LPBYTE lpbJob, DWORD dwCommand); | winspool.drv | Cette fonction permet de fixer l'état du traitement d'un travail contenu dans le tampon d'impressions de l'imprimante.
SetKeyboardState | BOOL SetKeyboardState(LPBYTE lpbKeyState); | user32.dll | Cette fonction permet de fixer l'état des 256 touches virtuel de clavier.
SetKernelObjectSecurity | BOOL SetKernelObjectSecurity( HANDLE hObject, SECURITY_INFORMATION si, PSECURITY_DESCRIPTOR psd ); | advapi32.dll | Cette fonction permet de fixer la sécurité de l'objet du noyau du système d'exploitation.
SetLastError | VOID SetLastError(DWORD fdwError); | kernel32.dll | Cette fonction permet de fixer le code de la dernière erreur d'un appel de processus léger.
SetLastErrorEx | VOID SetLastErrorEx(DWORD fdwError, DWORD fdwType); | user32.dll | Cette fonction permet de fixer le code de la dernière erreur avec un type d'erreur.
SetLocalTime | BOOL SetLocalTime(CONST SYSTEMTIME * lpst); | kernel32.dll | Cette fonction permet de fixer la date et l'heure locale courante.
SetLocaleInfoA | BOOL SetLocaleInfoA(LCID Locale, LCTYPE LCType, LPCTSTR lpLCData); | kernel32.dll | Cette fonction permet de fixer un item d'information local.
SetLocaleInfoW | BOOL SetLocaleInfoW(LCID lcid, LCTYPE lctype, LPCWSTR data); | kernel32.dll | Cette fonction permet de fixer un item d'information local avec des paramètres de chaine de caractères étendues (Unicode).
SetMailslotInfo | BOOL SetMailslotInfo(HANDLE hMailslot, DWORD dwReadTimeout); | kernel32.dll | Cette fonction permet de fixer la valeur de dépassement de délai utilisable pour le mailslot spécifié d'une opération de lecture.
SetMapMode | int SetMapMode(HDC hdc, int fnMapMode); | gdi32.dll | Cette fonction permet de fixer le mode de cartographie d'un périphérique de contexte spécifié.
SetMapperFlags | DWORD SetMapperFlags(HDC hdc, DWORD dwFlag); | gdi32.dll | Cette fonction permet de changer la méthode utilisé pour la cartographie d'une police de caractères lors d'une conversion de police de caractères logique vers une police de caractères physique.
SetMenu | BOOL SetMenu(HWND hwnd, HMENU hmenu); | user32.dll | Cette fonction permet d'attribué un menu à une fenêtre.
SetMenuContextHelpId | BOOL SetMenuContextHelpId(HMENU hmenu, DWORD dwContextHelpId); | user32.dll | Cette fonction permet d'associer un identificateur de contexte d'aide avec un menu.
SetMenuDefaultItem | BOOL SetMenuDefaultItem(HMENU hMenu, UINT uItem, UINT fByPos); | user32.dll | Cette fonction permet de fixer l'item par défaut d'un menu déroulant.
SetMenuItemBitmaps | BOOL SetMenuItemBitmaps(HMENU hmenu, UINT uItem, UINT fuFlags, HBITMAP hbmUnchecked, HBITMAP hbmChecked); | user32.dll | Cette fonction permet d'associer le Bitmap donnée avec un item de menu.
SetMenuItemInfoA | BOOL SetMenuItemInfoA(HMENU hMenu, UINT uItem, BOOL fByPosition, LPMENUITEMINFO lpmii); | user32.dll | Cette fonction permet de modifier les informations conçernant un item de menu.
SetMenuItemInfoW | BOOL SetMenuItemInfoW(HMENU hMenu, UINT uItem, BOOL fByPosition, LPCMENUITEMINFOW lpmii); | user32.dll | Cette fonction permet de modifier les informations conçernant un item de menu avec des paramètres de chaine de caractères étendues (Unicode).
SetMessageQueue | BOOL SetMessageQueue(int cMessagesMax); | user32.dll | Cette fonction permet de créer un nouveau message dans la file d'attente.
SetMetaFileBitsEx | HMETAFILE SetMetaFileBitsEx(UINT nSize, CONST BYTE * lpData); | gdi32.dll | Cette fonction permet de créer un fichier méta de format Windows, basé en mémoire, pour les données fournit.
SetMetaRgn | int SetMetaRgn(HDC hdc); | gdi32.dll | Cette fonction permet d'effectuer l'intersection de la région de capture courante pour le périphérique de contexte spécifié avec la région méta courante et sauvegarde la combinaison des régions dans une nouvelle région méta.
SetMiterLimit | BOOL SetMiterLimit(HDC hdc, FLOAT eNewLimit, PFLOAT peOldLimit); | gdi32.dll | Cette fonction permet de fixer la limite pour la longueur d'une jointure de mitre pour le périphérique de contexte spécifié.
SetNamedPipeHandleState | BOOL SetNamedPipeHandleState(HANDLE hNamedPipe, LPDWORD lpdwMode, LPDWORD lpcbMaxCollect, LPDWORD lpdwCollectDataTimeout); | kernel32.dll | Cette fonction permet de fixer le mode de lecture et le mode de bloc d'un tuyau nommé spécifié.
SetPaletteEntries | UINT SetPaletteEntries(HPALETTE hpal, UINT iStart, UINT cEntries, CONST PALETTEENTRY *lppe); | gdi32.dll | Cette fonction permet de fixer les valeurs de couleurs RVB (ou RGB en anglais) et les drapeaux d'un rang des entrées dans une palette logique spécifié.
SetParent | HWND SetParent(HWND hwndChild, HWND hwndNewParent); | user32.dll | Cette fonction permet de transférer un objet d'une fenêtre vers une autre.
SetPixel | COLORREF SetPixel(HDC hdc, int X, int Y, COLORREF crColor); | gdi32.dll | Cette fonction permet de fixer la couleur sous format RVB (RGB) d'un pixel affiché à l'écran.
SetPixelFormat | BOOL SetPixelFormat(HDC hdc, int iPixelFormat, const PIXELFORMATDESCRIPTOR *ppfd); | gdi32.dll | Cette fonction permet de fixer le format de pixel du périphérique de contexte spécifié au format spécifié par l'index spécifié.
SetPixelV | BOOL SetPixelV(HDC hdc, int X, int Y, COLORREF crColor); | gdi32.dll | Cette fonction permet de fixer le pixel aux coordonnées de fermeture approximatifs spécifiées avec la couleur spécifié.
SetPolyFillMode | int SetPolyFillMode(HDC hdc, int iPolyFillMode); | gdi32.dll | Cette fonction permet de fixer le mode de remplissage d'un polygone spécifié.
SetPrinterA | BOOL SetPrinterA(HANDLE hPrinter, DWORD dwLevel, LPBYTE lpbPrinter, DWORD dwCommand); | winspool.drv | Cette fonction permet d'envoyer une commande à l'imprimante.
SetPriorityClass | BOOL SetPriorityClass(HANDLE hProcess, DWORD fdwPriority); | kernel32.dll | Cette fonction permet de fixer la priorité d'une classe pour le processus spécifié.
SetPrivateObjectSecurity | BOOL SetPrivateObjectSecurity( SECURITY_INFORMATION si, PSECURITY_DESCRIPTOR psdSource, PSECURITY_DESCRIPTOR *lppsdTarget, PGENERIC_MAPPING pgm, HANDLE hClientToken ); | advapi32.dll | Cette fonction permet de modifier un descripteur de sécurité d'objet privé.
SetProcessAffinityMask | BOOL SetProcessAffinityMask(HANDLE hProcess, DWORD_PTR dwProcessAffinityMask); | kernel32.dll | Cette fonction permet de fixer un masque d'affinité de processeur pour le processus léger d'un processus spécifié.
SetProcessPriorityBoost | BOOL SetProcessPriorityBoost(HANDLE hProcess, BOOL DisablePriorityBoost); | kernel32.dll | Cette fonction permet d'activer ou désactiver les habilitées du système pour stimuler temporairement la priorité d'un processus léger dans un processus spécifié.
SetProcessShutdownParameters | BOOL SetProcessShutdownParameters(DWORD dwLevel, DWORD dwFlags); | kernel32.dll | Cette fonction permet de fixer les paramètres de fermeture du système pour le processus appelant courant.
SetProcessWindowStation | BOOL SetProcessWindowStation(HWINSTA hWinSta); | user32.dll | Cette fonction permet de fixer une fenêtre de station vers un processus appellant.
SetProcessWorkingSetSize | BOOL SetProcessWorkingSetSize(HANDLE hProcess, DWORD dwMinimumWorkingSetSize, DWORD dwMaximumWorkingSetSize); | kernel32.dll | Cette fonction permet de fixer la taille du travail minimum et maximum d'un processus spécifié.
SetPropA | BOOL SetPropA(HWND hwnd, LPCTSTR lpsz, HANDLE hData); | user32.dll | Cette fonction permet d'ajouter une nouvelle entrée ou changer une entrée existante dans la liste de propriété d'une fenêtre spécifié.
SetPropW | BOOL SetPropW(HWND hwnd, LPCWSTR lpsz, HANDLE hData); | user32.dll | Cette fonction permet d'ajouter une nouvelle entrée ou changer une entrée existante dans la liste de propriété d'une fenêtre spécifié avec des paramètres de chaine de caractères étendues (Unicode).
SetRect | BOOL SetRect(LPRECT lprc, int nLeft, int nTop, int nRight, int nBottom); | user32.dll | Cette fonction permet de fixer la taille et la position d'un rectangle.
SetRectEmpty | BOOL SetRectEmpty(LPRECT lprc); | user32.dll | Cette fonction permet de créer un rectangle vide (tous les coordonnées sont fixées à 0).
SetRectRgn | BOOL SetRectRgn(HRGN hrgn, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect); | gdi32.dll | Cette fonction permet de changer la région spécifié dans un région rectangulaire avec les coordonnées spécifiés.
SetROP2 | int SetROP2(HDC hdc, int fnDrawMode); | gdi32.dll | Cette fonction permet de fixer le mode de dessinage courant.
SetScrollInfo | int SetScrollInfo(HWND hwnd, int fnBar, LPSCROLLINFO lpsi, BOOL fRedraw); | user32.dll | Cette fonction permet de fixer les paramètres de barre de défilement, en incluant les positions minimums et maximums, la taille de la page et la position de la boite de défilement.
SetScrollPos | int SetScrollPos(HWND hwnd, int fnBar, int nPos, BOOL fRedraw); | user32.dll | Cette fonction permet de fixer la position d'une boite de défilement et, si requis, redessiner la barre de défilement reflétant la nouvelle position de la boite de défilement.
SetScrollRange | BOOL SetScrollRange(HWND hwnd, int fnBar, int nMinPos, int nMaxPos, BOOL fRedraw); | user32.dll | Cette fonction permet de fixer les valeurs de position minimum et maximum de la barre de défilement spécifié.
SetSecurityDescriptorDacl | BOOL SetSecurityDescriptorDacl( PSECURITY_DESCRIPTOR psd, BOOL fDaclPresent, PACL pAcl, BOOL fDaclDefaulted ); | advapi32.dll | Cette fonction permet de fixer les informations dans une liste de contrôle d'accès (ACL) discrétionnaire.
SetSecurityDescriptorGroup | BOOL SetSecurityDescriptorGroup( PSECURITY_DESCRIPTOR psd, PSID psidGroup, BOOL fGroupDefaulted ); | advapi32.dll | Cette fonction permet de fixer le groupe primaire d'information d'un format absolue de descripteur de sécurité, remplacer par un groupe d'information primaire déjà présent dans un descripteur de sécurité.
SetSecurityDescriptorOwner | BOOL SetSecurityDescriptorOwner( PSECURITY_DESCRIPTOR psd, PSID psidOwner, BOOL fOwnerDefaulted ); | advapi32.dll | Cette fonction permet de fixer les informations de propriétaire d'un format absolue de descripteur de sécurité.
SetSecurityDescriptorSacl | BOOL SetSecurityDescriptorSacl( PSECURITY_DESCRIPTOR psd, BOOL fSaclPresent, PACL pAcl, BOOL fSaclDefaulted ); | advapi32.dll | Cette fonction permet de fixer les informations d'une liste de contrôle d'accès (ACL) système.
SetStdHandle | BOOL SetStdHandle(DWORD IDStdHandle, HANDLE hHandle); | kernel32.dll | Cette fonction permet d'utiliser un ensemble de gestionnaire pour l'entrée standard, la sortie standard ou le périphérique d'erreur standard.
SetStretchBltMode | int SetStretchBltMode(HDC hdc, int iStretchMode); | gdi32.dll | Cette fonction permet de fixer le mode d'étirement Bitmap.
SetSysColors | BOOL WINAPI SetSysColors(int cDspElements, CONST INT *lpnDspElements, CONST COLORREF *lpdwRgbValues); | user32.dll | Cette fonction permet de fixer la/les couleurs d'un/des objet(s) affiché(s) du système d'exploitations Windows.
SetSystemCursor | BOOL SetSystemCursor(HCURSOR hCursor, DWORD dwCursorID); | user32.dll | Cette fonction permet de modifier un des curseurs qu'utilise le système d'exploitations Windows.
SetSystemPaletteUse | UINT SetSystemPaletteUse(HDC hdc, UINT uUsage); | gdi32.dll | Cette fonction permet de fixer l'utilisation de la couleur statique dans une palette du système.
SetSystemPowerState | BOOL SetSystemPowerState(BOOL fSuspend, BOOL fForce); | kernel32.dll | Cette fonction permet de fixer l'état de l'alimentation en énergie de l'ordinateur.
SetSystemTime | BOOL SetSystemTime(CONST SYSTEMTIME * lpst); | kernel32.dll | Cette fonction permet de fixer la date et l'heure système courante.
SetSystemTimeAdjustment | BOOL SetSystemTimeAdjustment(DWORD dwTimeAdjustment, PBOOL bTimeAdjustmentDisabled); | kernel32.dll | Cette fonction permet d'activer ou désactiver l'ajustement du temps périodique de l'horloge de l'heure de la journée.
SetTapeParameters | DWORD SetTapeParameters(HANDLE hDevice, DWORD dwOperation, LPVOID lpTapeInformation); | kernel32.dll | Cette fonction permet de fixer la taille d'un bloc de bande magnétique ou configure le périphérique de bande magnétique.
SetTapePosition | DWORD SetTapePosition(HANDLE hDevice, DWORD dwPositionMethod, DWORD dwPartition, DWORD dwOffsetLow, DWORD dwOffsetHigh, BOOL bImmediate); | kernel32.dll | Cette fonction permet de fixer la position de la bande magnétique dans un périphérique spécifié.
SetTextAlign | UINT SetTextAlign(HDC hdc, UINT fMode); | gdi32.dll | Cette fonction permet de fixer le contexte d'alignement d'un objet de texte.
SetTextColor | COLORREF SetTextColor(HDC hdc, COLORREF crColor); | gdi32.dll | Cette fonction permet de fixer la couleur du texte de la couleur spécifié.
SetTextCharacterExtra | int SetTextCharacterExtra(HDC hdc, int nCharExtra); | gdi32.dll | Cette fonction permet de fixer le quantité d'espacement entre les caractères.
SetTextJustification | BOOL SetTextJustification(HDC hdc, int nBreakExtra, int nBreakCount); | gdi32.dll | Cette fonction permet d'ajouter de l'espacement dans les caractères de saut d'une chaine de caractères.
SetThreadAffinityMask | DWORD SetThreadAffinityMask(HANDLE hThread, DWORD dwThreadAffinityMask); | kernel32.dll | Cette fonction permet de fixer le masque d'affinité du microprocesseur pour le processus léger spécifié.
SetThreadContext | BOOL SetThreadContext(HANDLE hThread, CONST CONTEXT * lpContext); | kernel32.dll | Cette fonction permet de fixer le contexte d'un processus léger spécifié.
SetThreadDesktop | BOOL SetThreadDesktop(HDESK hDesk); | user32.dll | Cette fonction permet de fixer le bureau au processus léger appellant.
SetThreadIdealProcessor | DWORD SetThreadIdealProcessor(HANDLE hThread, DWORD dwIdealProcessor); | kernel32.dll | Cette fonction permet de fixer le microprocesseur préféré pour un processus léger.
SetThreadLocale | BOOL SetThreadLocale(LCID Locale); | kernel32.dll | Cette fonction permet de fixer l'appel de processus léger locale courant.
SetThreadPriority | BOOL SetThreadPriority(HANDLE hThread, int nPriority); | kernel32.dll | Cette fonction permet de fixer la valeur de priorité pour le processus léger spécifié.
SetThreadPriorityBoost | BOOL SetThreadPriorityBoost(HANDLE hThread, BOOL DisablePriorityBoost); | kernel32.dll | Cette fonction permet d'activer ou désactiver l'habilité d'un système à temporairement stimuler la priorité d'un processus léger.
SetThreadToken | BOOL SetThreadToken( PHANDLE Thread, HANDLE Token ); | advapi32.dll | Cette fonction permet de fixer une personnification de jeton à un processus léger.
SetTimer | UINT SetTimer(HWND hwnd, UINT idTimer, UINT uTimeout, TIMERPROC tmprc); | user32.dll | Cette fonction permet d'installer une minuterie système.
SetTimeZoneInformation | BOOL SetTimeZoneInformation(CONST TIME_ZONE_INFORMATION * lptzi); | kernel32.dll | Cette fonction permet de fixer les paramètres de fuseau horaire courant.
SetTokenInformation | BOOL SetTokenInformation( HANDLE hToken, TOKEN_INFORMATION_CLASS tic, LPVOID lpvInformation, DWORD cbInformation ); | advapi32.dll | Cette fonction permet de fixer une variété de type d'information pour un accès à un jeton spécifié.
SetUnhandledExceptionFilter | LPTOP_LEVEL_EXCEPTION_FILTER SetUnhandledExceptionFilter(LPTOP_LEVEL_EXCEPTION_FILTER lpTopLevelExceptionFilter); | kernel32.dll | Cette fonction permet à une application de remplacer le gestionnaire d'exception de bas niveau dans les places Win32 du haut de chaque processus léger et processus.
SetupComm | BOOL SetupComm(HANDLE hCommDev, DWORD cbInQueue, DWORD cbOutQueue); | kernel32.dll | Cette fonction permet d'initialiser les paramètres de communications pour un périphérique de communications spécifié.
SetupCopyErrorA | UINT SetupCopyErrorA( HWND hwndParent, PCTSTR DialogTitle, PCTSTR DiskName, PCTSTR PathToSource, PCTSTR SourceFile, PCTSTR TargetPathFile, UINT Win32ErrorCode, DWORD Style, PTSTR PathBuffer, DWORD PathBufferSize, PDWORD PathRequiredSize ); | setupapi.dll | Cette fonction permet d'afficher une boite de dialogue pour indiquer à l'utilisateur qu'une erreur pendant la copie s'est produit.
SetupDeleteErrorA | UINT SetupDeleteErrorA( HWND hwndParent, PCTSTR DialogTitle, PCTSTR File, UINT Win32ErrorCode, DWORD Style ); | setupapi.dll | Cette fonction permet d'afficher une boite de dialogue pour indiquer à l'utilisateur qu'une erreur pendant l'effacement d'un fichier s'est produit.
SetUserObjectInformationA | BOOL SetUserObjectInformationA(HANDLE hObject, int nIndex, PVOID lpvInfo, DWORD cbInfo); | user32.dll | Cette fonction permet de fixer les informations à propos d'une fenêtre de station ou d'un objet de bureau.
SetUserObjectInformationW | BOOL SetUserObjectInformationW(HANDLE hObject, int nIndex, PVOID lpvInfo, DWORD cbInfo); | user32.dll | Cette fonction permet de fixer les informations à propos d'une fenêtre de station ou d'un objet de bureau avec des paramètres de chaine de caractères étendues (Unicode).
SetUserObjectSecurity | BOOL SetUserObjectSecurity(HANDLE hObject, PSECURITY_INFORMATION psi, PSECURITY_DESCRIPTOR psd); | user32.dll | Cette fonction permet de fixer la sécurité d'un objet utilisateur.
SetViewportExtEx | BOOL SetViewportExtEx(HDC hdc, int nXExtent, int nYExtent, LPSIZE lpSize); | gdi32.dll | Cette fonction permet de fixer les extensions X et Y d'un point de vue d'un périphérique de contexte spécifié.
SetViewportOrgEx | BOOL SetViewportOrgEx(HDC hdc, int X, int Y, LPPOINT lpPoint); | gdi32.dll | Cette fonction permet de fixer le point de vue d'origine d'un périphérique de contexte spécifié.
SetVolumeLabelA | BOOL SetVolumeLabelA(LPCTSTR lpRootPathName, LPCTSTR lpVolumeName); | kernel32.dll | Cette fonction permet de fixer le nom de volume d'une unité de disque.
SetVolumeLabelW | BOOL SetVolumeLabelW(LPCWSTR lpRootPathName, PCWSTR lpVolumeName); | kernel32.dll | Cette fonction permet de fixer le nom de volume d'une unité de disque avec des paramètres de chaine de caractères étendues (Unicode).
SetWaitableTimer | BOOL SetWaitableTimer(HANDLE hTimer, const LARGE_INTEGER *pDueTime, LONG lPeriod, PTIMERAPCROUTINE pfnCompletionRoutine, LPVOID lpArgToCompletionRoutine, BOOL fResume); | kernel32.dll | Cette fonction permet d'activer la minuterie d'attente spécifié.
SetWindowContextHelpId | BOOL SetWindowContextHelpId(HWND hwnd, DWORD dwContextHelpId); | user32.dll | Cette fonction permet d'associer un identificateur de contexte d'aide avec la fenêtre spécifié.
SetWindowLongA | LONG SetWindowLongA(HWND hwnd, int nIndex, LONG lNewLong); | user32.dll | Cette fonction permet de placer une valeur 32 bits dans le déplacement spécifié dans une fenêtre en mémoire supplémentaire pour la fenêtre spécifié.
SetWindowLongW | LONG SetWindowLongW(HWND hwnd, int nIndex, LONG lNewLong); | user32.dll | Cette fonction permet de placer une valeur 32 bits dans le déplacement spécifié dans une fenêtre en mémoire supplémentaire pour la fenêtre spécifié avec des paramètres de chaine de caractères étendues (Unicode).
SetWindowPlacement | BOOL SetWindowPlacement(HWND hwnd, CONST WINDOWPLACEMENT * lpwndpl); | user32.dll | Cette fonction permet de fixer l'état d'affichage et de restituer, minimiser et maximiser les positions d'une fenêtre.
SetWindowPos | BOOL SetWindowPos(HWND hwnd, HWND hwndInsertAfter, int x, int y, int cx, int cy, UINT fuFlags); | user32.dll | Cette fonction permet de fixer la position d'une fenêtre à une nouvelle coordonnées à l'écran.
SetWindowRgn | int SetWindowRgn(HWND hWnd, HRGN hRgn, BOOL bRedraw); | user32.dll | Cette fonction permet de fixer la région de fenêtre dans une fenêtre.
SetWindowsHookA | HHOOK SetWindowsHookA(int idHook, HOOKPROC hkprc); | user32.dll | Cette fonction permet d'installer une fonction de crochet utilisateur dans une chaine de crochet.
SetWindowsHookExA | HHOOK SetWindowsHookExA(int idHook, HOOKPROC hkprc, HINSTANCE hMod, DWORD dwThreadID); | user32.dll | Cette fonction permet d'installer un crochet de fonction utilisateur dans une chaine de crochet.
SetWindowsHookExW | HHOOK SetWindowsHookExW(int idHook, HOOKPROC hkprc, HINSTANCE hMod, DWORD dwThreadID); | user32.dll | Cette fonction permet d'installer un crochet de fonction utilisateur dans une chaine de crochet avec des paramètres de chaine de caractères étendues (Unicode).
SetWindowsHookW | HHOOK SetWindowsHookW(int idHook, HOOKPROC hkprc); | user32.dll | Cette fonction permet d'installer une fonction de crochet utilisateur dans une chaine de crochet avec des paramètres de chaine de caractères étendues (Unicode).
SetWindowTextA | BOOL SetWindowTextA(HWND hwnd, LPCTSTR lpsz); | user32.dll | Cette fonction permet de définir le contenu texte d'une fenêtre.
SetWindowTextW | BOOL SetWindowTextW(HWND hwnd, LPCWSTR lpsz); | user32.dll | Cette fonction permet de définir le contenu texte d'une fenêtre avec des paramètres de chaine de caractères étendues (Unicode).
SetWindowWord | WORD SetWindowWord(HWND hwnd, int nIndex, WORD wNewWord); | user32.dll | Cette fonction permet de placer une valeur 16 bits dans le déplacement spécifié dans une fenêtre en mémoire supplémentaire pour la fenêtre spécifié.
SetWinMetaFileBits | HENHMETAFILE SetWinMetaFileBits(UINT cbBuffer, CONST BYTE * lpbBuffer, HDC hdcRef, CONST METAFILEPICT * lpmfp); | gdi32.dll | Cette fonction permet de convertir un fichier méta d'un ancien format Windows vers un nouveau format étendue et entrepose le fichier méta en mémoire.
SetWindowOrgEx | BOOL SetWindowOrgEx(HDC hdc, int X, int Y, LPPOINT lpPoint); | gdi32.dll | Cette fonction permet de fixer la fenêtre d'origine d'un périphérique de contexte spécifié.
SetWorldTransform | BOOL SetWorldTransform(HDC hdc, CONST XFORM * lpXform); | gdi32.dll | Cette fonction permet de fixer une transformation de double dimensions linéaire entre l'espace mondiale et l'espace de page pour le périphérique de contexte spécifié.
SHAddToRecentDocs | WINSHELLAPI void WINAPI SHAddToRecentDocs(UINT uFlags, LPCVOID pv); | shell32.dll | Cette fonction permet d'ajouter un lien vers un document dans la liste des documents récamment utilisé.
SHAppBarMessage | WINSHELLAPI UINT APIENTRY SHAppBarMessage(DWORD dwMessage, PAPPBARDATA pabd); | shell32.dll | Cette fonction permet d'envoyer des commandes à la barre de tâche.
SHBrowseForFolder | WINSHELLAPI LPITEMIDLIST WINAPI SHBrowseForFolder(LPBROWSEINFO lpbi); | shell32.dll | Cette fonction permet d'afficher la boite de dialogue sélectionnant un répertoire.
SHCopyKeyA | DWORD SHCopyKeyA(HKEY hKeySrc, LPCSTR lpszSrcSubKey, HKEY hKeyDst, DWORD dwReserved); | shell32.dll | Cette fonction permet de copier les clefs de registre d'un répertoire à un autre dans la base de registres en tenant compte de bien copier toutes les sous-branches de répertoire inclus dans la clef source.
ShellAboutA | int ShellAboutA(HWND hWnd, LPCTSTR szApp, LPCTSTR szOtherStuff, HICON hIcon); | shell32.dll | Cette fonction permet d'afficher la boite de dialogue «A propos» de l'application spécifié.
ShellExecuteA | HINSTANCE ShellExecuteA( HWND hwnd, LPCTSTR lpOperation, LPCTSTR lpFile, LPTSTR lpParameters, LPCTSTR lpDirectory, INT nShowCmd ); | shell32.dll | Cette fonction permet de lancer une application externe.
ShellExecuteEx | WINSHELLAPI BOOL WINAPI ShellExecuteEx(LPSHELLEXECUTEINFO lpExecInfo); | shell32.dll | Cette fonction permet de lancer une application externe en utilisant l'interpréteur de commande (Shell) du système d'exploitation Windows.
Shell_NotifyIconA | BOOL Shell_NotifyIconA( DWORD dwMessage, PNOTIFYICONDATA lpdata); | shell32.dll | Cette fonction permet d'effectuer l'action d'ajouter, modifier ou supprimer une icône dans la barre de tâche.
SHEmptyRecycleBinA | HRESULT SHEmptyRecycleBinA( HWND hwnd, LPCTSTR pszRootPath, DWORD dwFlags); | shell32.dll | Cette fonction permet de vider le contenu de la corbeille.
SHFileOperationA | WINSHELLAPI int WINAPI SHFileOperationA(LPSHFILEOPSTRUCT lpFileOp); | shell32.dll | Cette fonction permet d'effectuer une copie, renommer, déplacer ou de supprimer un objet de fichier.
SHFormatDrive | DWORD SHFormatDrive( HWND hwnd, UINT drive, UINT fmtID, UINT options); | shell32.dll | Cette fonction permet d'effectuer le formattage d'une unité de disque.
SHGetPathFromIDList | WINSHELLAPI BOOL WINAPI SHGetPathFromIDList(LPCITEMIDLIST pidl, LPSTR pszPath); | shell32.dll | Cette fonction permet de retourner un pointeur dans un arbre de répertoire à l'emplacement ou se trouve un fichier.
ShowCaret | BOOL ShowCaret(HWND hwnd); | user32.dll | Cette fonction permet d'afficher un caret à l'écran à la position courant du caret.
ShowCursor | int ShowCursor( BOOL bShow); | user32.dll | Cette fonction permet d'afficher ou de faire disparaitre le pointeur de la souris.
ShowOwnedPopups | BOOL ShowOwnedPopups(HWND hwnd, BOOL fShow); | user32.dll | Cette fonction permet d'afficher ou de cacher tous les fenêtres POP-UP du propriétaire de la fenêtre spécifié.
ShowScrollBar | BOOL ShowScrollBar(HWND hwnd, int fnBar, BOOL fShow); | user32.dll | Cette fonction permet d'afficher ou de faire disparaitre la barre de défilement d'une fenêtre ou d'un objet.
ShowWindow | BOOL ShowWindow( HWND hwnd, int nCmdShow); | user32.dll | Cette fonction permet de définir l'état visuel d'une fenêtre d'application.
ShowWindowAsync | BOOL ShowWindowAsync(HWND hwnd, int nCmdShow); | user32.dll | Cette fonction permet de fixer l'affichage d'état de la création d'une fenêtre par différent processus léger.
SHSetValueA | DWORD SHSetValueA(HKEY hKey, LPCSTR lpszSubKey, LPCSTR lpszValue, DWORD dwType, LPCVOID pvData, DWORD cbData); | shlwapi.dll | Cette fonction permet de fixer une valeur dans la base de registres.
SignalObjectAndWait | DWORD SignalObjectAndWait(HANDLE hObjectToSignal, HANDLE hObjectToWaitOn, DWORD dwMilliseconds, BOOL bAlertable); | kernel32.dll | Cette fonction permet de signaler un objet et d'attendre après un autre objet, une simple opération.
SizeofResource | DWORD SizeofResource(HINSTANCE hModule, HRSRC hrsrc); | kernel32.dll | Cette fonction permet de demander la taille, en octets, d'une ressource spécifié.
Sleep | VOID Sleep(DWORD cMilliseconds); | kernel32.dll | Cette fonction permet de faire passer en mode d'attente pendant un certain délai en milliseconde le processus courant.
SleepEx | DWORD SleepEx(DWORD dwTimeout, BOOL fAlertable); | kernel32.dll | Cette fonction permet de faire en sorte que le processus léger courant entre dans un état d'attente jusqu'à ce que l'intervalle de temps spécifié est passé ou jusqu'à l'achèvement d'une fonction d'appel arrière d'entrée/sortie soit appelé.
sndPlaySoundA | BOOL sndPlaySoundA(LPCSTR lpszSound, UINT fuSound); | winmm.dll | Cette fonction permet de faire jouer un son de format Wave à partir d'un fichier.
SQLAllocConnect | RETCODE SQLAllocConnect(HENV henv, HDBC FAR * phdbc); | odbc32.dll | Cette fonction permet d'effectuer de l'allocation de mémoire pour un identificateur de connexion ODBC avec un environnement spécifié.
SQLAllocEnv | RETCODE SQLAllocEnv(HENV FAR *phenv); | odbc32.dll | Cette fonction permet d'effectuer de l'allocation de mémoire pour un identificateur d'environnement ODBC.
SQLAllocStmt | RETCODE SQLAllocStmt(HDBC hdbc, HSTMT FAR * phstmt); | odbc32.dll | Cette fonction permet d'effectuer de l'allocation de mémoire pour un identificateur d'instruction ODBC.
SQLBindCol | UL_FN_SPEC SQLRETURN UL_FN_MOD SQLBindCol( SQLHSTMT StatementHandle, SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType, SQLPOINTER TargetValue, SQLLEN BufferLength, SQLLEN * pcbValue); | odbc32.dll | Cette fonction permet d'effectuer de la lecture d'une colonne du résultat d'une requête par ODBC.
SQLBindParameter | SQLRETURN SQLBindParameter( SQLHSTMT StatementHandle, SQLUSMALLINT ParameterNumber, SQLSMALLINT InputOutputType, SQLSMALLINT ValueType, SQLSMALLINT ParameterType, SQLUINTEGER ColumnSize, SQLSMALLINT DecimalDigits, SQLPOINTER ParameterValuePtr, SQLINTEGER BufferLength, SQLINTEGER * StrLen_or_IndPtr); | odbc32.dll | Cette fonction permet d'envoyer un tampon de paramètres dans une instruction SQL par ODBC.
SQLConfigDataSource | BOOL SQLConfigDataSource( HWND hwndParent, WORD fRequest, LPCSTR lpszDriver, LPCSTR lpszAttributes); | odbccp32.dll | Cette fonction permet d'envoyer des commandes au pilote ODBC (Open Data Base Connectivity).
StartDocA | int StartDocA( HDC hdc, CONST DOCINFO * lpdi); | gdi32.dll | Cette fonction permet d'indiquer le commencement d'un travail d'impression pour l'imprimante.
StartDocW | int StartDocW(HDC hdc, CONST DOCINFOW * lpdi); | gdi32.dll | Cette fonction permet d'indiquer le commencement d'un travail d'impression pour l'imprimante avec des paramètres de chaine de caractères étendues (Unicode).
StartPage | int StartPage(HDC hDC); | gdi32.dll | Cette fonction permet d'indiquer le début d'une page de document pour l'impression pour l'imprimante.
StretchBlt | BOOL StretchBlt( HDC hdcDest, int nXOriginDest, int nYOriginDest, int nWidthDest, int nHeightDest, HDC hdcSrc, int nXOriginSrc, int nYOriginSrc, int nWidthSrc, int nHeightSrc, DWORD dwRop ); | gdi32.dll | Cette fonction permet de copier un morceau dans une autre image.
StretchDIBits | int StretchDIBits(HDC hdc, int XDest, int YDest, int nDestWidth, int nDestHeight, int XSrc, int YSrc, int nSrcWidth, int nSrcHeight, CONST VOID *lpBits, CONST BITMAPINFO * lpBitsInfo, UINT iUsage, DWORD dwRop); | gdi32.dll | Cette fonction permet de copier les données de couleur d'un rectangle de pixels dans un DIB de la destination rectangulaire spécifié.
StrIsIntlEqualA | BOOL StrIsIntlEqualA(BOOL fCaseSens, LPCTSTR String1, LPCTSTR String2, INT nChar); | shlwapi.dll | Cette fonction permet de comparer le début de deux chaines de caractères ASCIZ.
StrNCatA | LPSTR StrNCatA(LPSTR lpszStr, LPCSTR lpszCat, INT cchMax); | shlwapi.dll | Cette fonction permet d'ajouter à la fin d'une chaine de caractères ASCIZ le contenu d'une chaine de caractères ASCIZ.
StrokeAndFillPath | BOOL StrokeAndFillPath(HDC hdc); | gdi32.dll | Cette fonction permet de fermer n'importe quel figures ouvertes dans un chemin, traitant les lignes en dehors du chemin en utilisant le crayon courant, et remplissant l'intérieur en utilisant la brosse.
StrokePath | BOOL StrokePath(HDC hdc); | gdi32.dll | Cette fonction permet d'effectuer un traitement d'un chemin spécifié en utilisant le crayon courant.
StrToIntExA | BOOL StrToIntExA( LPCSTR lpszStr, DWORD dwFlags, LPINT lpiRet); | shlwapi.dll | Cette fonction permet de convertir une chaine de caractères ASCIZ ayant un nombre décimal ou hexadécimal en une valeur numérique entière.
StrTrimA | BOOL StrTrimA( LPSTR lpszStr, LPCSTR lpszTrim); | shlwapi.dll | Cette fonction permet d'enlever les caractères spécifié au début et à la fin d'une chaine de caractères ASCIZ.
SubtractRect | BOOL SubtractRect(LPRECT lprcDest, CONST RECT * lprcSrc1, CONST RECT * lprcSrc2); | user32.dll | Cette fonction permet de demander les coordonnées d'un rectangle par soustraction d'un rectangle par un autre.
SuspendThread | DWORD SuspendThread(HANDLE hThread); | kernel32.dll | Cette fonction permet de suspendre le processus léger spécifié.
SwapBuffers | BOOL SwapBuffers(HDC hdc); | gdi32.dll | Cette fonction permet d'échanger le tampon de premier plan avec l'arrière-plan si le format du pixel courant pour la fenêtre est référencée par le périphérique de contexte spécifié inclus dans le tampon d'arrière plan.
SwapMouseButton | BOOL SwapMouseButton(BOOL fSwap); | user32.dll | Cette fonction permet d'échanger le comportement des boutons de gauche de la souris devienne celui de droite et que celui de droite devienne celui de gauche.
SwitchDesktop | BOOL SwitchDesktop(HDESK hDesk); | user32.dll | Cette fonction permet de fixer le bureau visible et actif.
SwitchToFiber | VOID SwitchToFiber(LPVOID lpFiber); | kernel32.dll | Cette fonction permet de planifier une fibre.
SwitchToThread | BOOL SwitchToThread(void); | kernel32.dll | Cette fonction permet de provoquer l'exécution d'un rendement de processus léger vers un autre processus léger étant prêt a être exécuté par le microprocesseur courant.
SystemParametersInfoA | BOOL SystemParametersInfoA(UINT uiAction, UINT uiParam, PVOID pvParam, UINT fWinIni); | user32.dll | Cette fonction permet de fixer certain paramètre du système d'exploitation Windows.
SystemParametersInfoW | BOOL SystemParametersInfoW(UINT uiAction, UINT uiParam, PVOID pvParam, UINT fWinIni); | user32.dll | Cette fonction permet de fixer certain paramètre du système d'exploitation Windows avec des paramètres de chaine de caractères étendues (Unicode).
SystemTimeToFileTime | BOOL SystemTimeToFileTime(CONST SYSTEMTIME * lpst, LPFILETIME lpft); | kernel32.dll | Cette fonction permet de convertir le temps système vers le temps fichier.
SystemTimeToTzSpecificLocalTime | BOOL SystemTimeToTzSpecificLocalTime(LPTIME_ZONE_INFORMATION lpTimeZoneInformation, LPSYSTEMTIME lpUniversalTime, LPSYSTEMTIME lpLocalTime); | kernel32.dll | Cette fonction permet de convertir l'UTC (Coordinated Universal Time) vers un fuseau horaire spécifié correspondant au temps locale.
TabbedTextOutA | LONG TabbedTextOutA(HDC hdc, int x, int y, LPCTSTR lpString, int nCount, int nTabPositions, LPINT lpnTabStopPositions, int nTabOrigin); | user32.dll | Cette fonction permet d'écrire une chaine de caractères à l'emplacement spécifié, en étendant la tabulation des valeurs spécifiés dans des positions d'une tableau de tabulation sans arrêt.
TabbedTextOutW | LONG TabbedTextOutW(HDC hdc, int x, int y, LPCWSTR lpString, int nCount, int nTabPositions, LPINT lpnTabStopPositions, int nTabOrigin); | user32.dll | Cette fonction permet d'écrire une chaine de caractères à l'emplacement spécifié, en étendant la tabulation des valeurs spécifiés dans des positions d'une tableau de tabulation sans arrêt avec des paramètres de chaine de caractères étendues (Unicode).
TerminateProcess | BOOL TerminateProcess(HANDLE hProcess, UINT uExitCode); | kernel32.dll | Cette fonction permet de terminer le processus spécifié et tous ses processus légers.
TerminateThread | BOOL TerminateThread(HANDLE hThread, DWORD dwExitCode); | kernel32.dll | Cette fonction permet de terminer le processus léger spécifié.
TextOutA | BOOL TextOutA(HDC hdc, int nXStart, int nYStart, LPCTSTR lpString, int cbString); | gdi32.dll | Cette fonction permet d'afficher une chaine de caractères dans une fenêtre d'application.
TextOutW | BOOL TextOutW(HDC hdc, int nXStart, int nYStart, LPCWSTR lpString, int cbString); | gdi32.dll | Cette fonction permet d'afficher une chaine de caractères dans une fenêtre d'application avec des paramètres de chaine de caractères étendues (Unicode).
TileWindows | WORD WINAPI TileWindows( HWND hwndParent, WORD wFlags, LPCRECT lpRect, WORD cChildrenb, const HWND FAR *ahwndChildren ); | user32.dll | Cette fonction permet de présenter sous forme mosaïque les sous-fenêtre d'une fenêtre d'application MDI.
TlsAlloc | DWORD TlsAlloc(VOID); | kernel32.dll | Cette fonction permet d'allouer un processus léger d'entrepose d'index locale (TLS).
TlsFree | BOOL TlsFree(DWORD dwTlsIndex); | kernel32.dll | Cette fonction permet de libérer un processus léger d'entrepose d'index locale (TLS).
TlsGetValue | LPVOID TlsGetValue(DWORD dwTlsIndex); | kernel32.dll | Cette fonction permet de demander la valeur dans un appel de processus d'entreposage d'une fente locale (TLS) pour un index TLS spécifié.
TlsSetValue | BOOL TlsSetValue(DWORD dwTlsIndex, LPVOID lpvTlsValue); | kernel32.dll | Cette fonction permet d'entreposer la valeur d'un appel de processus d'entreposage d'une fente locale (TLS) pour un index TLS spécifié.
ToAscii | int ToAscii(UINT uVirtKey, UINT uScanCode, PBYTE lpbKeyState, LPWORD lpwTransKey, UINT fuState); | user32.dll | Cette fonction permet de traduire le code de touche virtuel spécifié et l'état du clavier en sa correspondance de caractère Windows ou de caractères.
ToAsciiEx | int ToAsciiEx(UINT uVirtKey, UINT ScanCode, BYTE *lpbKeyState, DWORD *lpdwTransKey, UINT fuState, HKL hkl); | user32.dll | Cette fonction permet de traduire le code de touche virtuel spécifié et l'état du clavier en sa correspondance de caractère Windows ou de caractères avec des options supplémentaires.
TouchFileTimes | BOOL TouchFileTimes( HANDLE FileHandle, PSYSTEMTIME pSystemTime); | imagehlp.dll | Cette fonction permet de fixer la date et l'heure d'un fichier avec un Handle.
ToUnicode | int ToUnicode(UINT wVirtKey, UINT wScanCode, PBYTE lpKeyState, LPWSTR pwszBuff, int cchBuff, UINT wFlags); | user32.dll | Cette fonction permet de traduire le code de touche virtuel spécifié et l'état du clavier en sa correspondance de caractère Unicode ou de caractères.
ToUnicodeEx | int ToUnicodeEx(UINT wVirtKey, UINT wScanCode, const BYTE *lpKeyState, LPWSTR pwszBuff, int cchBuff, UINT wFlags, HKL dwhkl); | user32.dll | Cette fonction permet de traduire le code de touche virtuel spécifié et l'état du clavier en sa correspondance de caractère Unicode ou de caractères avec des options supplémentaires.
TrackMouseEvent | BOOL TrackMouseEvent(LPTRACKMOUSEEVENT lpEventTrack); | user32.dll | Cette fonction permet de poster les messages lorsque le pointeur de souris laisse une fenêtre ou passe dessus une fenêtre pour un nombre de temps spécifié.
TrackPopupMenu | BOOL TrackPopupMenu( HMENU hMenu, UINT uFlags, int x, int y, int nReserved, HWND hWnd, CONST RECT * prcRect ); | user32.dll | Cette fonction permet d'afficher un menu contextuelle.
TrackPopupMenuEx | BOOL TrackPopupMenuEx(HMENU hmenu, UINT fuFlags, int x, int y, HWND hwnd, LPTPMPARAMS lptpm); | user32.dll | Cette fonction permet d'afficher un menu contextuel à l'emplacement spécifié et trace les items de sélection dans un menu contextuel.
TransactNamedPipe | BOOL TransactNamedPipe(HANDLE hNamedPipe, LPVOID lpvWriteBuf, DWORD cbWriteBuf, LPVOID lpvReadBuf, DWORD cbReadBuf, LPDWORD lpcbRead, LPOVERLAPPED lpo); | kernel32.dll | Cette fonction permet de combiner dans une simple opération réseau les fonctions d'écriture d'un message et de lecture de message d'un tuyau nommé spécifié.
TranslateAcceleratorA | int TranslateAcceleratorA(HWND hwnd, HACCEL haccl, LPMSG lpmsg); | user32.dll | Cette fonction permet d'effectuer le traitement des touches d'accélérations pour les commandes de menu.
TranslateAcceleratorW | int TranslateAcceleratorW(HWND hwnd, HACCEL haccl, LPMSG lpmsg); | user32.dll | Cette fonction permet d'effectuer le traitement des touches d'accélérations pour les commandes de menu avec des paramètres de chaine de caractères étendues (Unicode).
TranslateCharsetInfo | UINT TranslateCharsetInfo(DWORD FAR * lpSrc, LPCHARSETINFO lpCs, DWORD dwFlags); | user32.dll | Cette fonction permet d'effectuer une conversion, basé sur ensemble de caractères spécifié, un code de page ou une valeur de signature de police de caractères, ajustant tous les membres d'une structure de destination aux valeurs approprié.
TranslateMDISysAccel | BOOL TranslateMDISysAccel(HWND hwndClient, LPMSG lpmsg); | user32.dll | Cette fonction permet d'effectuer le traitement d'une combinaison de touches d'accélération pour une interface de document multiple (MDI) de la fenêtre enfant.
TranslateMessage | BOOL TranslateMessage(CONST MSG *lpmsg); | user32.dll | Cette fonction permet d'effectuer une transformation de message de touche virtuel en caractères de messages.
TransmitCommChar | BOOL TransmitCommChar(HANDLE hCommDev, char chTransmit); | kernel32.dll | Cette fonction permet de transmettre un caractère spécifié à venir dans des données en attente dans un tampon de sortie du périphérique de communication spécifié.
TryEnterCriticalSection | BOOL TryEnterCriticalSection(LPCRITICAL_SECTION lpCriticalSection); | kernel32.dll | Cette fonction permet d'effectuer une tentative pour entrer dans une section critique sans blocage.
UnhandledExceptionFilter | LONG UnhandledExceptionFilter(STRUCT _EXCEPTION_POINTERS * lpexpExceptionInfo); | kernel32.dll | Cette fonction permet de passer une exception non définit au débogueur si le processus de déboguage est actif.
UnhookWindowsHook | BOOL UnhookWindowsHook(int nCode, HOOKPROC hkprc); | user32.dll | Cette fonction permet d'enlever la fonction crochet utilisateur pour une chaine de fonctions crochet.
UnhookWindowsHookEx | BOOL UnhookWindowsHookEx(HHOOK hhook); | user32.dll | Cette fonction permet d'enlever un crochet de fonction utilisateur d'une chaine de crochet.
UnionRect | BOOL UnionRect(LPRECT lprcDst, CONST RECT *lprcSrc1, CONST RECT *lprcSrc2); | user32.dll | Cette fonction permet d'effectuer la création de l'union de 2 rectangles.
UnloadKeyboardLayout | BOOL UnloadKeyboardLayout(HKL hkl); | user32.dll | Cette fonction permet d'enlever une schéma de clavier.
UnlockFile | BOOL UnlockFile(HANDLE hFile, DWORD dwFileOffsetLow, DWORD dwFileOffsetHigh, DWORD cbUnlockLow, DWORD cbUnlockHigh); | kernel32.dll | Cette fonction permet de déverrouiller une région d'un fichier ouvert.
UnlockFileEx | BOOL UnlockFileEx(HANDLE hFile, DWORD dwReserved, DWORD nNumberOfBytesToUnlockLow, DWORD nNumberOfBytesToUnlockHigh, LPOVERLAPPED lpOverlapped); | kernel32.dll | Cette fonction permet de déverrouiller une rangée d'octets précédemment verrouillé dans un fichier ouvert.
UnmapViewOfFile | BOOL UnmapViewOfFile(LPVOID lpBaseAddress); | kernel32.dll | Cette fonction permet de cartographier une vue cartographier dans un fichier d'un espace d'adressage d'un processus appelant.
UnpackDDElParam | BOOL UnpackDDElParam(UINT uMsg, LONG lParam, PUINT puLow, PUINT puHigh); | user32.dll | Cette fonction permet d'effectuer un décompactage d'une valeur DDE reçu spécifié vers un message DDE posté.
UnrealizeObject | BOOL UnrealizeObject(HGDIOBJ hgdiobj); | gdi32.dll | Cette fonction permet de réinitialiser l'origine de la brosse ou de réinitialiser la palette logique.
UnregisterClassA | BOOL UnregisterClassA(LPCTSTR lpszClass, HINSTANCE hinst); | user32.dll | Cette fonction permet d'enlever une classe de fenêtre et libère l'entreposage requis par la classe.
UnregisterClassW | BOOL UnregisterClassW(LPCWSTR lpszClass, HINSTANCE hinst); | user32.dll | Cette fonction permet d'enlever une classe de fenêtre et libère l'entreposage requis par la classe avec des paramètres de chaine de caractères étendues (Unicode).
UnregisterDeviceNotification | BOOL UnregisterDeviceNotification(HDEVNOTIFY Handle); | user32.dll | Cette fonction permet de désenregistrer un périphérique ou un type de périphérique pour que la fenêtre reçoivent des avertissements de changements.
UnregisterHotKey | BOOL UnregisterHotKey(HWND hwnd, int idHotKey); | user32.dll | Cette fonction permet de désenregistrer l'état des touches de combinaison (Alt, Ctrl, Shift) pour le processus léger.
UpdateColors | BOOL UpdateColors(HDC hdc); | gdi32.dll | Cette fonction permet de mettre-à-jour la région client d'un périphérique de contexte spécifié en faisant correspondre les couleurs courantes dans une région client, pixel par pixel, à une palette de système.
UpdateResourceA | BOOL UpdateResourceA(HANDLE hUpdateFile, LPCTSTR lpszType, LPCTSTR lpszName, WORD IDLanguage, LPVOID lpvData, DWORD cbData); | kernel32.dll | Cette fonction permet d'ajouter, supprimer ou remplacer une ressource dans un fichier exécutable.
UpdateResourceW | BOOL UpdateResourceW(HANDLE hUpdate, LPCWSTR lpType, LPCWSTR lpName, WORD wLanguage, LPVOID lpData, DWORD cbData); | kernel32.dll | Cette fonction permet d'ajouter, supprimer ou remplacer une ressource dans un fichier exécutable avec des paramètres de chaine de caractères étendues (Unicode).
UpdateWindow | BOOL UpdateWindow(HWND hwnd); | user32.dll | Cette fonction permet de mettre à jour la région client de la fenêtre donnée par l'envoie du message WM_PAINT à la fenêtre si la région à mettre à jour de la fenêtre n'est pas vide.
UrlCanonicalizeA | HRESULT UrlCanonicalizeA( LPCSTR pszUrl, LPSTR pszCanonicalized, LPDWORD pcchCanonicalized, DWORD dwFlags); | shlwapi.dll | Cette fonction permet de transformer un chemin d'un URL de sa forme absolue à relative, c'est-à-dire de remplacer des "../" pour atteinte le répertoire en court par exemple.
UrlCombineA | HRESULT UrlCombineA( LPCSTR pszBase, LPCSTR pszRelative, LPSTR pszCombined, LPDWORD pcchCombined, DWORD dwFlags); | shlwapi.dll | Cette fonction permet d'ajouter un chemin d'un URL à la fin d'un autre chemin d'URL.
UrlCreateFromPathA | HRESULT UrlCreateFromPathA( LPCTSTR pszPath, LPTSTR pszUrl, LPDWORD pcchUrl, DWORD dwReserved); | shlwapi.dll | Cette fonction permet de convertir un chemin de système d'exploitation de style DOS sous sa forme URL.
UrlEscapeA | HRESULT UrlEscapeA( LPCTSTR pszURL, LPTSTR pszEscaped, LPDWORD pcchEscaped, DWORD dwFlags ); | shlwapi.dll | Cette fonction permet de convertir les caractères particulier en format acceptable pour un URL.
UrlGetPartA | HRESULT UrlGetPartA( LPCSTR pszIn, LPSTR pszOut, LPDWORD pcchOut, DWORD dwPart, DWORD dwFlags ); | shlwapi.dll | Cette fonction permet d'extraire une partie de l'URL.
UrlIsOpaqueA | BOOL UrlIsOpaqueA( LPCSTR pszUrl); | shlwapi.dll | Cette fonction permet de demander si le URL est opaque.
UrlUnescapeA | HRESULT UrlUnescapeA( LPSTR pszUrl, LPSTR pszUnescaped, LPDWORD pcchUnescaped, DWORD dwFlags ); | shlwapi.dll | Cette fonction permet de convertir les caractères particulier du URL en une chaine de caractères ASCIZ.
ValidateRect | BOOL ValidateRect(HWND hwnd, CONST RECT *lprc); | user32.dll | Cette fonction permet de valider une région client avec le rectangle donnée par suppression du rectangle de la région à mettre à jour de la fenêtre donnée.
ValidateRgn | BOOL ValidateRgn(HWND hwnd, HRGN hrgn); | user32.dll | Cette fonction permet de valider la région client avec la région donnée par suppression de la région de la mise à jour courante d'une région de fenêtre spécifié.
VerifyScreenSavePwd | BOOL VerifyScreenSavePwd(HWND hwnd); | password.cpl | Cette fonction permet d'effectuer la vérification du mots de passe lors du lancement d'un écran de veille.
VerLanguageNameA | DWORD VerLanguageNameA( DWORD idLang,LPTSTR lpszLang, DWORD cbLang); | kernel32.dll | Cette fonction permet de demander le MID identifiant le langage utilisé par le système d'exploitation.
VerLanguageNameW | DWORD VerLanguageNameW(DWORD wLang, LPWSTR szLang, DWORD nSize); | kernel32.dll | Cette fonction permet de demander le MID identifiant le langage utilisé par le système d'exploitation avec des paramètres de chaines de caractères étendues (Unicode).
VirtualAlloc | LPVOID VirtualAlloc(LPVOID lpvAddress, DWORD cbSize, DWORD fdwAllocationType, DWORD fdwProtect); | kernel32.dll | Cette fonction permet de réservé ou d'engager une région de pages dans un espace d'adressage virtuel d'un processus appelant.
VirtualAllocEx | LPVOID VirtualAllocEx(HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD flAllocationType, DWORD flProtect); | kernel32.dll | Cette fonction permet de réservé ou d'engager une région de pages dans un espace d'adressage virtuel pour le processus spécifié.
VirtualFree | BOOL VirtualFree(LPVOID lpvAddress, DWORD cbSize, DWORD fdwFreeType); | kernel32.dll | Cette fonction permet de relâcher ou désengager (ou les deux) une région de pages dans une espace de d'adressage virtuel d'un processus appelant.
VirtualFreeEx | BOOL VirtualFreeEx(HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, DWORD dwFreeType); | kernel32.dll | Cette fonction permet de relâcher ou désengager (ou les deux) une région de pages dans une espace de d'adressage virtuel pour un processus spécifié.
VirtualLock | BOOL VirtualLock(LPVOID lpvAddress, DWORD cbSize); | kernel32.dll | Cette fonction permet de verrouiller une région spécifié dans un espace d'adressage virtuel de la mémoire en s'assurant que l'accès ultérieur à la région ne soit pas passible d'une erreur de page.
VirtualProtect | BOOL VirtualProtect(LPVOID lpvAddress, DWORD cbSize, DWORD fdwNewProtect, PDWORD pfdwOldProtect); | kernel32.dll | Cette fonction permet de changer la protection d'accès d'une région de pages engagé dans un espace d'adressage virtuel d'un processus appelant.
VirtualProtectEx | BOOL VirtualProtectEx(HANDLE hProcess, LPVOID lpvAddress, DWORD cbSize, DWORD fdwNewProtect, PDWORD pfdwOldProtect); | kernel32.dll | Cette fonction permet de changer la protection d'accès d'une région de pages engagé dans un espace d'adressage virtuel d'un processus spécifié.
VirtualQuery | DWORD VirtualQuery(LPCVOID lpvAddress, PMEMORY_BASIC_INFORMATION pmbiBuffer, DWORD cbLength); | kernel32.dll | Cette fonction permet de fournir les informations à propos d'un rang de pages dans un espace d'adressage virtuel pour un processus appelant.
VirtualQueryEx | DWORD VirtualQueryEx(HANDLE hProcess, LPCVOID lpvAddress, PMEMORY_BASIC_INFORMATION pmbiBuffer, DWORD cbLength); | kernel32.dll | Cette fonction permet de fournir les informations à propos d'un rang de pages dans un espace d'adressage virtuel dans un processus spécifié.
VirtualUnlock | BOOL VirtualUnlock(LPVOID lpvAddress, DWORD cbSize); | kernel32.dll | Cette fonction permet de déverrouiller un range de pages spécifié dans un espace d'adressage virtuel d'un processus et activant le système pour l'échange de pages dans le fichier de pagination si nécessaire.
VkKeyScanA | SHORT VkKeyScanA(TCHAR ch); | user32.dll | Cette fonction permet d'effectuer la conversion de caractère correspondant un code de touche virtuel et de l'état de touche de combinaison du clavier courant.
VkKeyScanExA | SHORT VkKeyScanExA(UINT uChar, HKL hkl); | user32.dll | Cette fonction permet d'effectuer la conversion de caractère correspondant un code de touche virtuel et de l'état de touche de combinaison du clavier courant en utilisant le langage et la couche physique du clavier.
VkKeyScanExW | SHORT VkKeyScanExW(WCHAR uChar, HKL hkl); | user32.dll | Cette fonction permet d'effectuer la conversion de caractère correspondant un code de touche virtuel et de l'état de touche de combinaison du clavier courant en utilisant le langage et la couche physique du clavier avec des paramètres de chaine de caractères étendues (Unicode).
VkKeyScanW | SHORT VkKeyScanW(WCHAR ch); | user32.dll | Cette fonction permet d'effectuer la conversion de caractère correspondant un code de touche virtuel et de l'état de touche de combinaison du clavier courant avec des paramètres de chaine de caractères étendues (Unicode).
WaitCommEvent | BOOL WaitCommEvent(HANDLE hCommDev, LPDWORD lpfdwEvtMask, LPOVERLAPPED lpo); | kernel32.dll | Cette fonction permet d'attendre qu'un événement se produise sur le périphérique de communication spécifié.
WaitForDebugEvent | BOOL WaitForDebugEvent(LPDEBUG_EVENT lpde, DWORD dwTimeout); | kernel32.dll | Cette fonction permet d'attendre qu'un événement de déboguage se produise dans un processus en déboguage.
WaitForInputIdle | DWORD WaitForInputIdle(HANDLE hProcess, DWORD dwTimeout); | user32.dll | Cette fonction permet d'attendre tant que le processus données est en attente d'une entrée utilisateur sans attendre d'entrée ou de dépassement d'intervalle de temps.
WaitForMultipleObjects | DWORD WaitForMultipleObjects(DWORD cObjects, CONST HANDLE * lphObjects, BOOL fWaitAll, DWORD dwTimeout); | kernel32.dll | Cette fonction permet de retourner lorsque l'un des objets indiqués est dans l'état signalé, ou lorsque le délai d'attente spécifié s'est écoulé.
WaitForMultipleObjectsEx | DWORD WaitForMultipleObjectsEx(DWORD cObjects, CONST HANDLE * lphObjects, BOOL fWaitAll, DWORD dwTimeout, BOOL fAlertable); | kernel32.dll | Cette fonction permet d'attendre que la fonction soit utilisés pour un traitement d'attendre d'alerte.
WaitForSingleObject | DWORD WaitForSingleObject( HANDLE hObject, DWORD dwTimeout ); | kernel32.dll | Cette fonction permet d'attendre qu'un objet retourne un signal ou que le délai spécifié soit écoulé.
WaitForSingleObjectEx | DWORD WaitForSingleObjectEx(HANDLE hObject, DWORD dwTimeout, BOOL fAlertable); | kernel32.dll | Cette fonction permet d'étendre la fonction d'attente étant utilisés pour un traitement d'attendre d'alerte.
WaitMessage | BOOL WaitMessage(VOID); | user32.dll | Cette fonction permet de rendre le contrôle à une autre application quand une application n'a pas une autre tâche en traitement.
WaitNamedPipeA | BOOL WaitNamedPipeA(LPCTSTR lpszPipeName, DWORD dwTimeout); | kernel32.dll | Cette fonction permet d'attendre jusqu'à ce qu'un dépassement d'intervalle ou d'une instance d'un tuyau nommé spécifié soit disponible pour être connecté à processus en attente d'une opération ConnectNamedPipe se produise.
WaitNamedPipeW | BOOL WaitNamedPipeW(LPCWSTR name, DWORD nTimeOut); | kernel32.dll | Cette fonction permet d'attendre jusqu'à ce qu'un dépassement d'intervalle ou d'une instance d'un tuyau nommé spécifié soit disponible pour être connecté à processus en attente d'une opération ConnectNamedPipe se produise avec des paramètres de chaine de caractères étendue (Unicode).
waveOutGetNumDevs | UINT waveOutGetNumDevs(VOID); | winmm.dll | Cette fonction permet de demander le nombre de sortie Wave disponible sur le système d'explotation Windows.
WideCharToMultiByte | int WideCharToMultiByte(UINT CodePage, DWORD dwFlags, LPCWSTR lpWideCharStr, int cchWideChar, LPSTR lpMultiByteStr, int cchMultiByte, LPCSTR lpDefaultChar, LPBOOL lpUsedDefaultChar); | kernel32.dll | Cette fonction permet de cartographier une chaine de caractères Unicode en une nouvelle chaine de caractères.
WidenPath | BOOL WidenPath(HDC hdc); | gdi32.dll | Cette fonction permet de redéfinir le chemin courant de la région devant être repeinte si le chemin est un trait utilisant le crayon courant sélectionné dans le périphérique de contexte spécifié.
WindowFromDC | HWND WindowFromDC(HDC hdc); | user32.dll | Cette fonction permet de demander le Handle de la fenêtre correspondante au périphérique de contexte spécifié.
WindowFromPoint | HWND WindowFromPoint(POINT pt); | user32.dll | Cette fonction permet de demander le Handle associé à une fenêtre correspondant au coordonnées pixel spécifié.
WinExec | UINT WinExec( LPCSTR lpszCmdLine, UINT fuCmdShow ); | kernel32.dll | Cette fonction permet de lancer l'exécution d'un programme externe.
WinHelpA | BOOL WinHelpA(HWND hwnd, LPCTSTR lpszHelp, UINT uCommand, DWORD dwData); | user32.dll | Cette fonction permet de démarrer la fenêtre d'aide (WINHELP.EXE) et passe les données optionnels indiquant la nature de la requête d'aide pour l'application.
WinHelpW | BOOL WinHelpW(HWND hwnd, LPCTSTR lpszHelp, UINT uCommand, DWORD dwData); | user32.dll | Cette fonction permet de démarrer la fenêtre d'aide (WINHELP.EXE) et passe les données optionnels indiquant la nature de la requête d'aide pour l'application avec des paramètres de chaine de caractères étendues (Unicode).
WNetAddConnection2A | DWORD WNetAddConnection2A(LPNETRESOURCE lpNetResource, LPCTSTR lpPassword, LPCTSTR lpUsername, DWORD fdwConnection); | mpr.dll | Cette fonction permet de fabriquer une connexion vers une ressource réseau.
WNetAddConnection2W | DWORD WNetAddConnection2W(LPNETRESOURCEW lpNetResource, LPCWSTR lpPassword, LPCWSTR lpUsername, DWORD fdwConnection); | mpr.dll | Cette fonction permet de fabriquer une connexion vers une ressource réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetAddConnection3A | DWORD WNetAddConnection3A(HWND hwndOwner, LPNETRESOURCE lpNetResource, LPTSTR lpPassword, LPTSTR lpUserName, DWORD fdwConnection); | mpr.dll | Cette fonction permet de fabriquer une connexion vers une ressource réseau en utilisant des options supplémentaires.
WNetAddConnection3W | DWORD WNetAddConnection3W(HWND hwndOwner, LPNETRESOURCEW lpNetResource, LPCWSTR lpPassword, LPCWSTR lpUserName, DWORD fdwConnection); | mpr.dll | Cette fonction permet de fabriquer une connexion vers une ressource réseau en utilisant des options supplémentaires avec des paramètres de chaine de caractères étendues (Unicode).
WNetAddConnectionA | DWORD WNetAddConnectionA(LPTSTR lpszRemoteName, LPTSTR lpszPassword,LPTSTR lpszLocalName); | mpr.dll | Cette fonction permet d'effectuer la connexion d'une unité de disque à une ressource réseau.
WNetAddConnectionW | DWORD WNetAddConnectionW(LPCWSTR lpszRemoteName, LPCWSTR lpszPassword, LPCWSTR lpszLocalName); | mpr.dll | Cette fonction permet d'effectuer la connexion d'une unité de disque à une ressource réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetCancelConnection2A | DWORD WNetCancelConnection2A(LPTSTR lpszName, DWORD fdwConnection, BOOL fForce); | mpr.dll | Cette fonction permet d'effectuer l'arrêt d'une connexion réseau existante.
WNetCancelConnection2W | DWORD WNetCancelConnection2W(LPCWSTR lpszName, DWORD fdwConnection, BOOL fForce); | mpr.dll | Cette fonction permet d'effectuer l'arrêt d'une connexion réseau existante avec des paramètres de chaine de caractères étendues (Unicode).
WNetCancelConnectionA | DWORD WNetCancelConnectionA(LPTSTR lpszName, BOOL fForce); | mpr.dll | Cette fonction permet d'effectuer la déconnexion d'une unité de disque à une ressource réseau.
WNetCancelConnectionW | DWORD WNetCancelConnectionW(LPCWSTR lpszName, BOOL fForce); | mpr.dll | Cette fonction permet d'effectuer la déconnexion d'une unité de disque à une ressource réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetCloseEnum | DWORD WNetCloseEnum(HANDLE hEnum); | mpr.dll | Cette fonction permet de terminer l'énumération d'une ressource réseau débuté par la fonction WNetOpenEnum.
WNetConnectionDialog | DWORD WNetConnectionDialog( HWND hwnd, DWORD fdwResourceType ); | mpr.dll | Cette fonction permet d'afficher une boite de dialogue permettant à une unité de disque de se connecter à une ressource réseau.
WNetConnectionDialog1A | DWORD WNetConnectionDialog1A(LPCONNECTDLGSTRUCT lpConnDlgStruct); | mpr.dll | Cette fonction permet d'introduire une boite de dialogue de navigation général pour la connexion des ressources de réseau.
WNetConnectionDialog1W | DWORD WNetConnectionDialog1W(LPCONNECTDLGSTRUCTW lpConnDlgStruct); | mpr.dll | Cette fonction permet d'introduire une boite de dialogue de navigation général pour la connexion des ressources de réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetDisconnectDialog | DWORD WNetDisconnectDialog( HWND hwnd, DWORD fdwResourceType ); | mpr.dll | Cette fonction permet d'afficher une boite de dialogue permettant à une unité de disque de se déconnecter à une ressource réseau.
WNetDisconnectDialog1A | DWORD WNetDisconnectDialog1A(LPDISCDLGSTRUCT lpConnDlgStruct); | mpr.dll | Cette fonction permet d'effectuer la déconnexion d'une ressource de réseau.
WNetDisconnectDialog1W | DWORD WNetDisconnectDialog1W(LPDISCDLGSTRUCTW lpConnDlgStruct); | mpr.dll | Cette fonction permet d'effectuer la déconnexion d'une ressource de réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetEnumResourceA | DWORD WNetEnumResourceA(HANDLE hEnum, LPDWORD lpcEntries, LPVOID lpvBuffer, LPDWORD lpcbBuffer); | mpr.dll | Cette fonction permet de continuer l'énumération de ressource réseau commencé par la fonction WNetOpenEnum.
WNetEnumResourceW | DWORD WNetEnumResourceW(HANDLE hEnum, LPDWORD lpcEntries, LPVOID lpvBuffer, LPDWORD lpcbBuffer); | mpr.dll | Cette fonction permet de continuer l'énumération de ressource réseau commencé par la fonction WNetOpenEnum avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetConnectionA | DWORD WNetGetConnectionA(LPTSTR lpszLocalName, LPTSTR lpszRemoteName, LPDWORD lpcchBuffer); | mpr.dll | Cette fonction permet de demander le nom de la ressource réseau associé avec un périphérique local.
WNetGetConnectionW | DWORD WNetGetConnectionW(LPCWSTR lpszLocalName, LPWSTR lpszRemoteName, LPDWORD lpcchBuffer); | mpr.dll | Cette fonction permet de demander le nom de la ressource réseau associé avec un périphérique local avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetLastErrorA | DWORD WNetGetLastErrorA(LPDWORD lpdwErrorCode, LPTSTR lpszDescription, DWORD cchDescription, LPTSTR lpszName, DWORD cchName); | mpr.dll | Cette fonction permet de demander le plus récent des derniers code d'erreur étendue des fonctions réseau du système d'exploitation.
WNetGetLastErrorW | DWORD WNetGetLastErrorW(LPDWORD lpdwErrorCode, LPWSTR lpszDescription, DWORD cchDescription, LPWSTR lpszName, DWORD cchName); | mpr.dll | Cette fonction permet de demander le plus récent des derniers code d'erreur étendue des fonctions réseau du système d'exploitation avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetNetworkInformationA | DWORD WNetGetNetworkInformationA(LPCTSTR lpProvider, LPNETINFOSTRUCT lpNetInfoStruct); | mpr.dll | Cette fonction permet de demander les informations étendues à propos d'un fournisseur de réseau spécifié dont le nom a été retourné lors d'une énumération réseau précédente.
WNetGetNetworkInformationW | DWORD WNetGetNetworkInformationW(LPCWSTR lpProvider, LPNETINFOSTRUCT lpNetInfoStruct); | mpr.dll | Cette fonction permet de demander les informations étendues à propos d'un fournisseur de réseau spécifié dont le nom a été retourné lors d'une énumération réseau précédente avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetProviderNameA | DWORD WNetGetProviderNameA(DWORD dwNetType, LPTSTR lpProviderName, LPDWORD lpBufferSize); | mpr.dll | Cette fonction permet de demander le nom de fournisseur pour un type spécifié dans un réseau.
WNetGetProviderNameW | DWORD WNetGetProviderNameW(DWORD dwNetType, LPWSTR lpProviderName, LPDWORD lpBufferSize); | mpr.dll | Cette fonction permet de demander le nom de fournisseur pour un type spécifié dans un réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetResourceParentA | DWORD WNetGetResourceParentA(LPNETRESOURCE lpNetResource, LPVOID lpBuffer, LPDWORD lpBufferSize); | mpr.dll | Cette fonction permet de naviguer à partir d'une ressource.
WNetGetResourceParentW | DWORD WNetGetResourceParentW(LPNETRESOURCEW lpNetResource, LPVOID lpBuffer, LPDWORD lpBufferSize); | mpr.dll | Cette fonction permet de naviguer à partir d'une ressource avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetUniversalNameA | DWORD WNetGetUniversalNameA(LPCTSTR lpLocalPath, DWORD dwInfoLevel, LPVOID lpBuffer, LPDWORD lpBufferSize); | mpr.dll | Cette fonction permet de prendre un chemin, avec comme base une unité de disque, pour un réseau de ressource et demande la structure de données contenant des formes universel de ce nom.
WNetGetUniversalNameW | DWORD WNetGetUniversalNameW(LPCWSTR lpLocalPath, DWORD dwInfoLevel, LPVOID lpBuffer, LPDWORD lpBufferSize); | mpr.dll | Cette fonction permet de prendre un chemin, avec comme base une unité de disque, pour un réseau de ressource et demande la structure de données contenant des formes universel de ce nom avec des paramètres de chaine de caractères étendues (Unicode).
WNetGetUserA | DWORD WNetGetUserA(LPTSTR lpszLocalName,LPTSTR lpszUserName,LPDWORD lpcchBuffer); | mpr.dll | Cette fonction permet de connaitre le nom de l'utilisateur utilisé pour la connexion réseau.
WNetGetUserW | DWORD WNetGetUserW(LPCWSTR lpszLocalName, LPWSTR lpszUserName,LPDWORD lpcchBuffer); | mpr.dll | Cette fonction permet de connaitre le nom de l'utilisateur utilisé pour la connexion réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetOpenEnumA | DWORD WNetOpenEnumA(DWORD fdwScope, DWORD fdwType, DWORD fdwUsage, LPNETRESOURCE lpNetResource, LPHANDLE lphEnum); | mpr.dll | Cette fonction permet de démarrer l'énumération de ressource réseau ou de connexions existantes.
WNetOpenEnumW | DWORD WNetOpenEnumW(DWORD fdwScope, DWORD fdwType, DWORD fdwUsage, LPNETRESOURCEW lpNetResource, LPHANDLE lphEnum); | mpr.dll | Cette fonction permet de démarrer l'énumération de ressource réseau ou de connexions existantes avec des paramètres de chaine de caractères étendues (Unicode).
WNetSetConnectionA | DWORD WNetSetConnectionA(LPCTSTR lpName, DWORD dwProperty, LPVOID pvValue); | mpr.dll | Cette fonction permet de modifier les caractéristiques d'une connexion réseau.
WNetSetConnectionW | DWORD WNetSetConnectionW(LPCWSTR lpName, DWORD dwProperty, LPVOID pvValue); | mpr.dll | Cette fonction permet de modifier les caractéristiques d'une connexion réseau avec des paramètres de chaine de caractères étendues (Unicode).
WNetUseConnectionA | DWORD WNetUseConnectionA(HWND hwndOwner, LPNETRESOURCE lpNetResource, LPCTSTR lpPassword, LPCTSTR lpUserID, DWORD dwFlags, LPTSTR lpAccessName, LPDWORD lpBufferSize, LPDWORD lpResult); | mpr.dll | Cette fonction permet de fabriquer une connexion vers une ressource réseau.
WNetUseConnectionW | DWORD WNetUseConnectionW(HWND hwndOwner, LPNETRESOURCEW lpNetResource, LPCWSTR lpPassword, LPCWSTR lpUserID, DWORD dwFlags, LPWSTR lpAccessName, LPDWORD lpBufferSize, LPDWORD lpResult); | mpr.dll | Cette fonction permet de fabriquer une connexion vers une ressource réseau avec des paramètres de chaine de caractères étendues (Unicode).
WriteConsoleA | BOOL WriteConsoleA(HANDLE hConsoleOutput, CONST VOID *lpvBuffer, DWORD cchToWrite, LPDWORD lpcchWritten, LPVOID lpvReserved); | kernel32.dll | Cette fonction permet d'effectuer l'écriture d'une chaine de caractères dans la sortie de la console standard.
WriteConsoleW | BOOL WriteConsoleW(HANDLE hConsoleOutput, CONST VOID *lpvBuffer, DWORD cchToWrite, LPDWORD lpcchWritten, LPVOID lpvReserved); | kernel32.dll | Cette fonction permet d'effectuer l'écriture d'une chaine de caractères dans la sortie de la console standard avec des paramètres de chaine de caractères étendues (Unicode).
WriteConsoleInputA | BOOL WriteConsoleInputA(HANDLE hConsoleInput, PINPUT_RECORD pirBuffer, DWORD cInRecords, LPDWORD lpcWritten); | kernel32.dll | Cette fonction permet d'écrire des données directement dans l'entrée du tampon de la console.
WriteConsoleInputW | BOOL WriteConsoleInputW(HANDLE hConsoleInput, CONST INPUT_RECORD *lpBuffer, DWORD nLength, LPDWORD lpNumberOfEventsWritten); | kernel32.dll | Cette fonction permet d'écrire des données directement dans l'entrée du tampon de la console avec des paramètres de chaine de caractères étendues (Unicode).
WriteConsoleOutputA | BOOL WriteConsoleOutputA(HANDLE hConsoleOutput, PCHAR_INFO pchiSrcBuffer, COORD coordSrcBufferSize, COORD coordSrcBufferCoord, PSMALL_RECT psrctDestRect); | kernel32.dll | Cette fonction permet d'écrire le caractère et la donnée d'attribut de couleur vers un bloc rectangulaire spécifié dans une cellule de caractères d'un tampon de console d'écran.
WriteConsoleOutputW | BOOL WriteConsoleOutputW(HANDLE hConsoleOutput, PCHAR_INFO pchiSrcBuffer, COORD coordSrcBufferSize, COORD coordSrcBufferCoord, PSMALL_RECT psrctDestRect); | kernel32.dll | Cette fonction permet d'écrire le caractère et la donnée d'attribut de couleur vers un bloc rectangulaire spécifié dans une cellule de caractères d'un tampon de console d'écran avec des paramètres de chaine de caractères étendue (Unicode).
WriteConsoleOutputAttribute | BOOL WriteConsoleOutputAttribute(HANDLE hConsoleOutput, LPWORD lpwAttribute, DWORD cWriteCells, COORD coordWrite, LPDWORD lpcWritten); | kernel32.dll | Cette fonction permet de copier un nombre d'attributs de couleurs de premier plan et d'arrière-plan dans une cellule consécutive d'un tampon de console d'écran en débutant à l'emplacement spécifié.
WriteConsoleOutputCharacterA | BOOL WriteConsoleOutputCharacterA(HANDLE hConsoleOutput, LPTSTR lpWriteBuffer, DWORD cchWrite, COORD coordWriteCoord, LPDWORD lpcWritten); | kernel32.dll | Cette fonction permet d'effectuer une copie d'un nombre de caractères à une cellule consécutive d'un tampon de console d'écran en débutant à l'emplacement spécifié.
WriteConsoleOutputCharacterW | BOOL WriteConsoleOutputCharacterW(HANDLE hConsoleOutput, LPCWSTR str, DWORD length, COORD coord, LPDWORD lpNumCharsWritten); | kernel32.dll | Cette fonction permet d'effectuer une copie d'un nombre de caractères à une cellule consécutive d'un tampon de console d'écran en débutant à l'emplacement spécifié avec des paramètres de chaine de caractères étendue (Unicode).
WriteFile | BOOL WriteFile(HANDLE hFile, LPCVOID lpBuffer, DWORD nNumberOfBytesToWrite, LPDWORD lpNumberOfBytesWritten, LPOVERLAPPED lpOverlapped); | kernel32.dll | Cette fonction permet d'écrire des données dans un fichier et est conçue pour des opérations sychronisé ou désychronisé.
WriteFileEx | BOOL WriteFileEx(HANDLE hFile, LPCVOID lpBuffer, DWORD nNumberOfBytesToWrite, LPOVERLAPPED lpOverlapped,LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine); | kernel32.dll | Cette fonction permet d'écrire des données dans un fichier.
WritePrivateProfileSectionA | BOOL WritePrivateProfileSectionA(LPCTSTR lpszSection, LPCTSTR lpszKeysAndValues, LPCTSTR lpszFile); | kernel32.dll | Cette fonction permet de remplacer les clefs et les valeurs dans la section spécifié d'un fichier d'initialisation.
WritePrivateProfileSectionW | BOOL WritePrivateProfileSectionW(LPCWSTR section, LPCWSTR string, LPCWSTR filename); | kernel32.dll | Cette fonction permet de remplacer les clefs et les valeurs dans la section spécifié d'un fichier d'initialisation avec des paramètres de chaine de caractères étendue (Unicode).
WritePrivateProfileStringA | BOOL WritePrivateProfileStringA(LPCTSTR lpszSection, LPCTSTR lpszKey, LPCTSTR lpszString, LPCTSTR lpszFile); | kernel32.dll | Cette fonction permet de copier une chaine de caractères dans une section spécifié d'un fichier d'initialisation spécifié.
WritePrivateProfileStringW | BOOL WritePrivateProfileStringW(LPCWSTR lpszSection, LPCWSTR lpszKey, LPCWSTR lpszString, LPCWSTR lpszFile); | kernel32.dll | Cette fonction permet de copier une chaine de caractères dans une section spécifié d'un fichier d'initialisation spécifié avec des paramètres de chaine de caractères étendue (Unicode).
WriteProcessMemory | BOOL WriteProcessMemory(HANDLE hProcess, LPVOID lpBaseAddress, LPVOID lpBuffer, DWORD cbWrite, LPDWORD lpNumberOfBytesWritten); | kernel32.dll | Cette fonction permet d'écrire en mémoire pour le processus spécifié.
WriteProfileSectionA | BOOL WriteProfileSectionA(LPCTSTR lpszSection, LPCTSTR lpszKeysAndValues); | kernel32.dll | Cette fonction permet de remplacer le contenu de la section spécifié dans le fichier «WIN.INI» avec les clefs et les valeurs spécifiés.
WriteProfileSectionW | BOOL WriteProfileSectionW(LPCWSTR lpszSection, LPCWSTR lpszKeysAndValues); | kernel32.dll | Cette fonction permet de remplacer le contenu de la section spécifié dans le fichier «WIN.INI» avec les clefs et les valeurs spécifiés et avec les paramètres de chaine de caractères étendues (Unicode).
WriteProfileStringA | BOOL WriteProfileStringA(LPCTSTR lpszSection, LPCTSTR lpszKey, LPCTSTR lpszString); | kernel32.dll | Cette fonction permet de copier une chaine de caractères dans la section spécifié d'un fichier «WIN.INI».
WriteProfileStringW | BOOL WriteProfileStringW(LPCWSTR section, LPCWSTR entry, LPCWSTR string); | kernel32.dll | Cette fonction permet de copier une chaine de caractères dans la section spécifié d'un fichier «WIN.INI» avec des paramètres de chaine de caractères étendues (Unicode).
WriteTapemark | DWORD WriteTapemark(HANDLE hDevice, DWORD dwTapemarkType, DWORD dwTapemarkCount, BOOL bImmediate); | kernel32.dll | Cette fonction permet d'écrire une marque de fichier, un fixeur de marque, une marque de fichier court ou une long marque de fichier dans un périphérique de bande magnétique.
wsprintfA | int wsprintfA(LPTSTR lpOut, LPCTSTR lpFmt, ...); | user32.dll | Cette fonction permet d'écrire des données formatté d'une chaine de caractères vers un tampon.
wsprintfW | int wsprintfW(LPWSTR lpOut, LPCWSTR lpFmt, ...); | user32.dll | Cette fonction permet d'écrire des données formatté d'une chaine de caractères vers un tampon avec des paramètres de chaine de caractères étendues (Unicode).
wvsprintfA | int wvsprintfA(LPTSTR lpOutput, LPCTSTR lpFormat, va_list arglist); | user32.dll | Cette fonction permet de formatter et d'entreposer une série de caractères et de valeurs virtuel dans un tampon.
wvsprintfW | int wvsprintfW(LPWSTR lpOutput, LPCWSTR lpFormat, va_list arglist); | user32.dll | Cette fonction permet de formatter et d'entreposer une série de caractères et de valeurs virtuel dans un tampon avec des paramètres de chaine de caractères étendues (Unicode).
_hread | long _hread(HFILE hFile, LPVOID lpBuffer, long lBytes); | kernel32.dll | Cette fonction permet d'effectuer la lecture de données dans le fichier spécifié.
_hwrite | long _hwrite(HFILE hFile, LPCSTR lpBuffer, long lBytes); | kernel32.dll | Cette fonction permet d'effectuer l'écriture de données dans le fichier spécifié.
_lclose | HFILE _lclose(HFILE hFile); | kernel32.dll | Cette fonction permet de fermer le fichier Handle spécifié.
_lcreat | HFILE _lcreat(LPCSTR lpPathName, int iAttribute); | kernel32.dll | Cette fonction permet de créer ou ouvrir un fichier spécifié.
_llseek | LONG _llseek(HFILE hFile, LONG lOffset, int iOrigin ); | kernel32.dll | Cette fonction permet de positionner le pointeur du fichier Handle spécifié.
_lopen | HFILE _lopen(LPCSTR lpPathName, int iReadWrite); | kernel32.dll | Cette fonction permet d'ouvrir un fichier existant et de fixer le pointeur de fichier au début du fichier.
_lread | UINT _lread(HFILE hFile, LPVOID lpBuffer, UINT uBytes); | kernel32.dll | Cette fonction permet d'effectuer la lecture de données dans un fichier spécifié.
_lwrite | UINT _lwrite(HFILE hFile, LPCSTR lpBuffer, UINT uBytes); | kernel32.dll | Cette fonction permet d'effectuer l'écriture de données du fichier spécifié.

Vu dans http://www.gladir.com

Articles - Les géants de l'informatique - Microsoft

Dernière mise à jour: Dimanche, le 27 septembre 2009


Apprentissage de l'API Windows.htm

Apprentissage de l'API Windows

  • Programmation Windows

Vous voudriez apprendre l'API Windows et vous trouvez les autres cours présents sur le net trop difficiles ou pas assez précis ? Vous avez frappé à la bonne porte.

Bienvenue dans ce tutoriel. Vous allez apprendre ici à vous servir d'une API très développée : l'API Win32. Sa proximité avec le système d'exploitation lui permet d'avoir un contrôle total sur n'importe quelle partie de l'OS, et un grand éventail de fonctions.

L'API Windows est, malheureusement et comme son nom l'indique, exclusivement dédiée à Windows. Donc, si vous possédez un autre OS, passez votre chemin.

Je considère dans ce tutoriel que vous ne connaissez strictement rien à l'API Windows, ceci pour ne pas décourager les débutants ; néanmoins, vous aurez besoin des connaissances acquises tout au long du tuto de M@teo21. Vous trouverez donc ici des cours évolutifs, entrecoupés de TP réguliers, une documentation sur les différents messages, notifications, styles, fonctions, etc., et même un glossaire ;) .

Toutes ces parties seront progressivement remplies au fur et à mesure de la rédaction du tutorial en lui-même. J'ai pour cela des coéquipiers, respectivement pamaury et acryline.

Si vous avez des problèmes, des questions, ou encore des suggestions, vous pouvez nous envoyer un MP, auquel on se fera un plaisir de répondre. ;)

Les termes touchant à la programmation que vous êtes susceptibles de ne pas comprendre seront de couleur rouge, et seront définis dans le glossaire.

Sur ce, je vous souhaite une agréable lecture, et j'espère que ce tuto vous aidera le plus possible. :)

  • Partie 1 - Grandes lignes
  1. Les bases
  2. Les contrôles
  3. L'affichage
  4. TP : Un lecteur audio
  5. Les événements
  6. Esthétique avancée
  • Partie 2 - Annexes
  1. Documentation
  2. Glossaire
  3. Manipulation du registre
  4. Divers
  • Partie 3 - Projets
  1. Programmes

  • Ce cours n'est pas encore certifiant.


... Cercle Trigonométique ... Courbe Sinus Cosinus et Tangente

Le cercle trigonométrique


Les bases.htm

LES BASES

Une API, ou Application Programming Interface est, comme son nom l'indique, une interface de programmation : elle contient un ensemble de fonctions bas niveau, ici extrêmement bien documentée , permettant de programmer des applications haut niveau. Elles sont alors accessibles à partir de bibliothèques intégrées au projet.

Pour pouvoir utiliser le WinAPI, vous devez évidemment sélectionner un projet WinAPI dans votre IDE pendant la création du nouveau projet. Par exemple, sous code::blocks, vous devez sélectionner "Win32 GUI Application" comme sur cette photo :

Vous n'aurez rien à linker pour le moment.

Comme vous pouvez vous en douter, vous devrez inclure la bibliothèque appropriée pour utiliser cette API, à savoir :

#include <windows.h>

Comme chacun sait, une seule fonction est commune à tous les programmes : le main. Le point d'entrée du programme est, dans cette API, un peu plus compliqué que dans un projet console ou SDL. Ainsi, le code minimal que vous pouvez faire en WinAPI est le suivant :

#include <windows.h>
int WinMain (
HINSTANCE cetteInstance,
HINSTANCE precedenteInstance,
LPSTR lignesDeCommande,
int modeDAffichage
)
{
return 0;
}

:waw: C'est quoi, tout ça ? Où diable sont passés les argc et argv tout bêtes ?

Pas de panique. ;) Étudions ensemble cette fonction. Vous connaissez forcément le type de retour de cette fonction : il s'agit d'un int. Passons maintenant aux arguments :

  • Le premier argument est l'instance actuelle de votre programme. C'est en quelque sorte une "boîte" représentant votre programme, et imbriquant tout ce qu'il contient (pour ne pas vous encombrer la tête) :

HINSTANCE cetteInstance

  • Le deuxième argument désigne l'instance précédente. En fait, ce paramètre date de Windows 16 bits, et donc obsolète. Il vaut donc toujours NULL :

HINSTANCE precedenteInstance

Conséquence : vous n'êtes même pas obligés d'indiquer un nom de variable, bien que le type soit quand même nécessaire.

  • Le troisième argument remplace justement argv que vous connaissez déjà dans le prototype du main console ou SDL. Cependant, il est dans sa forme brute ; vous ne pourrez donc pas l'utiliser de suite (je vous expliquerai plus tard comment la découper et l'utiliser) :

LPSTR lignesDeCommande

Il est d'un type que vous ne connaissez pas, puisqu'il s'agit d'une structure signée Microsoft. Celle-ci correspond à un bête char*.

  • Le petit dernier ne vous servira probablement pas souvent : il s'agit du mode d'affichage (visible, invisible, minimisé etc...) de la fenêtre principale :

int modeDAffichage

Même remarque que pour le paramètre contenant l'instance précédente.

Pour ceux qui écoutent les conseils du rédacteur -à savoir moi ;) -, vous devriez au préalable savoir à quoi correspondent les types principaux utilisés par cette API :

  • LPSTR correspondant à un char *, et ses déclinaisons :
  • LPCSTR correspondant à un const char *.
  • LPTSTR correspondant à un TCHAR * (voir TCHAR plus bas).
    On l'initialise avec la macro TEXT, selon :

LPTSTR string = TEXT("exemple");

  • LPWSTR correspondant à un wchar_t *
    On l'initialise avec le préfixe ' L', selon :

LPWSTR string = L"exemple";

Vous pouvez combiner les lettres définissant un caractère particulier de LPSTR pour obtenir des types adaptés (comme LPCTSTR).

  • WORD correspondant à un unsigned short
  • DWORD correspondant à un unsigned long
  • TCHAR correspondant à :
  • En compilant en Unicode : un wchar_t
  • Sinon : un char ;)

Il est recommandé d'utiliser les TCHAR partout (même si ce n'est pas fait dans ce tuto), du moment que l'on n'utilise pas stdio, ou certaines fonctions de cette API (dont je vous mettrai en garde si c'est le cas), pour des raisons de compatibilité avec n'importe quel IDE.

Seuls les utilisateurs de VS en général compilent en Unicode. Si n'en voulez pas (ça simplifie les choses), voici la manip' à exécuter : Project Properties -> Configuration Properties -> General -> Character set -> Changer l 'option de "unicode" à "multi-byte".

Et voilà pour une présentation restreinte ^^ .

Vous savez maintenant ne rien afficher sans erreur de compilation ! :lol: Génial, non ? Vous en voulez plus ? (pas étonnant ;) ) D'accord, direction "Votre première fenêtre" :) .

Pour ceux qui veulent absolument un "Hello World" avant de commencer (ça les frustre sûrement), voici la formule magique à rajouter dans le WinMain :

MessageBox(NULL, "Hello World", "Hello World", MB_OK);

Ou plus propre :

MessageBox(NULL, TEXT("Hello World"), TEXT("Hello World"), MB_OK);

Rédacteur : Mg++

Votre première fenêtre

Vous êtes impatient de créer votre première fenêtre ? Tant mieux, c'est ici que ça se passe. :p

Le minimum

Premièrement, munissez-vous du code minimal que je vous ai donné tout à l'heure :

#include <windows.h>
int WinMain (HINSTANCE cetteInstance, HINSTANCE precedenteInstance, LPSTR lignesDeCommande, int modeDAffichage)
{
return 0;
}

Dans certains cas, vous serez contraints de rajouter les mots clés WINAPI ou APIENTRY entre 'int' et 'WinMain', cause d'une erreur de compilation de type "WinMain already defined in...". Si c'est le cas, adaptez mes codes à cette situation.

Les variables nécessaires

Nous aurons besoin pour afficher la fenêtre de plusieurs variables :

HWND fenetrePrincipale;
MSG message;
WNDCLASS classeFenetre;

Étudions d'abord leur type respectif et leurs rôles :

  • fenetrePrincipale est de type HWND, qui veut dire handle de fenêtre. Si vous connaissez un minimum l'anglais, vous remarquerez que l'on pourrait le traduire par poignée.

Quel est le rapport ?

Réfléchissez : fenetrePrincipale sera une sorte de "poignée" nous permettant d'agir sur la fenêtre principale. En outre, cette structure possède sur la fenêtre toutes les informations nécessaires à son affichage. Bien sûr, ce handle ayant un nom, cela nous permet d'identifier, par le nom d'une variable, la fenêtre créée (bref : c'est bien pratique :) ).

  • message, quant à lui, est comme son nom l'indique un message système, utilisé pour communiquer entre l'utilisateur et les fenêtres : il s'agit en fait du descriptif d'un événement. Si vous connaissez la SDL, vous pourriez faire la correspondance avec 'SDL_event'.
  • classeFenetre est la classe de fenêtre (décidément, je choisis bien les noms ;) ) nécessaire à la construction de la fenêtre principale. C'est en fait une liste d'informations permettant par la suite de créer la fenêtre selon notre bon vouloir. (Je précise que la "classe" n'a pas ici la même définition que pour le C++.)

Remplissage de la classe de fenêtre

La création de la fenêtre demande le remplissage de sa classe, ou WNDCLASS. Nous allons donc nous en occuper :

  • Le champ 1 définit le style à affecter à la fenêtre. Ici, il n'y en a pas :

classeFenetre.style=0;

  • Le champ 2 définit la fonction callback à utiliser pour cette fenêtre (je vous explique plus loin) :

classeFenetre.lpfnWndProc = procedureFenetrePrincipale;

  • Le champ 3 définit combien de bytes en plus seront alloués à la suite de la structure (cela nous est inutile, donc 0 ^^ ) :

classeFenetre.cbClsExtra = 0;

  • Le champ 4 définit la même chose, mais suite à l'instance (donc aussi inutile) :

classeFenetre.cbWndExtra = 0;

  • Le champ 5 définit l'instance à laquelle appartient la fenêtre :

classeFenetre.hInstance = cetteInstance;

  • Le champ 6 définit l'icône à utiliser pour la fenêtre (en haut à gauche). Elle doit être chargée soit en passant par les ressources (nous verrons cela plus tard), soit, comme suit, avec une icône inclue dans Windows, possédant un ID spécifique (la liste sera peut-être proposée dans notre documentation) :

classeFenetre.hIcon = LoadIcon(NULL, IDI_APPLICATION);

  • Le champ 7 définit le curseur par défaut à utiliser pour cette fenêtre (même chose que pour les icônes : le curseur utilisé ici est inclus dans Windows, et choisi parmi une petite liste) :

classeFenetre.hCursor = LoadCursor(NULL, IDC_ARROW);

  • Le champ 8 définit la couleur à utiliser pour le fond de la fenêtre. Son type est HBRUSH, (traduit par brosse), et peut être changé grâce à une fonction de conversion, RGB->HBRUSH, que nous verrons plus tard, dans le chapitre sur l'affichage :

classeFenetre.hbrBackground = (HBRUSH)(1 + COLOR_BTNFACE);

  • Le champ 9 définit le menu associé à cette fenêtre (peut être ajouté d'une autre manière) : ici, il n'y en aura aucun :

classeFenetre.lpszMenuName = NULL;

  • Et enfin le le champ 10, qui sera le nom de la classe en question :

classeFenetre.lpszClassName = "classeF";

Maintenant que nous avons rempli la classe de la fenêtre, encore faut-il la sauvegarder. Voici comment faire :

RegisterClass(&classeFenetre);

Création proprement dite de la fenêtre principale

Enfin ! Nous sommes prêts à créer notre fenêtre. C'est le travail de la fonction, dont voici le prototype :

HWND CreateWindow(
LPCTSTR lpClassName,
LPCTSTR lpWindowName,
DWORD dwStyle,
int x,
int y,
int nWidth,
int nHeight,
HWND hWndParent,
HMENU hMenu,
HANDLE hInstance,
LPVOID lpParam
);

:euh: Ne me dis pas que l'on doit retenir toutes ces fonctions ?

Bon d'accord, elles sont lourdes... mais non, vous n'êtes pas obligés de les retenir. Mais à force de les utiliser (vous verrez ;) ), vous les connaîtrez par coeur. "C'est en forgeant qu'on devient forgeron" à ce qu'il paraît. :p

Bon. Déjà, vous pouvez remarquer que son type de retour est HWND. Vous pouvez faire la correspondance avec fenetrePrincipale, et deviner que c'est celle-ci qui va contenir le retour de CreateWindow ^^ . En fait, cette fonction remplit la structure HWND avec les informations propres à la fenêtre, et la crée par la même occasion. (CreateWindow ne crée pas vraiment que des fenêtres au sens connu, mais toutes sortes de contrôles, que ce soit : fenêtre, bouton, listbox, progressbar, etc.)

Maintenant, occupons-nous de ses arguments :

  • L'argument 1 désigne la classe de fenêtre à partir de laquelle la fenêtre va être créée :

LPCTSTR lpClassName

(Vous avez peut être remarqué qu'il est de type LPCTSTR... C'est en fait la même chose que LPSTR mais constant, donc égal à const char[].)

  • L'argument 2 désigne le nom de la fenêtre, c'est-à-dire, dans le cas d'une fenêtre, la string qui va être affichée en guise de titre :

LPCTSTR lpWindowName

  • L'argument 3 désigne les styles à donner à la fenêtre :

DWORD dwStyle

(Vous avez sûrement remarqué que le type de cet argument vous est inconnu : en fait, il est utilisé un peu partout, et correspond à un unsigned long. Il est souvent utilisé pour les styles / flags, et sûrement construit à partir d'une association de bits.)

  • Les arguments 4 à 7 désignent respectivement : les coordonnées du coin supérieur gauche, la largeur, ainsi que la hauteur de la fenêtre :

int x,
int y,
int nWidth,
int nHeight

  • L'argument 8 désigne le handle de la fenêtre parent :

HWND hWndParent

  • L'argument 9 désigne, dans le cas d'une fenêtre, le menu associé à celle-ci, et dans le cas d'un contrôle, son ID (pour pouvoir le manipuler) :

HMENU hMenu

  • L'argument 10 désigne l'instance du programme :

HANDLE hInstance

(HINSTANCE dérive de HANDLE, donc son passage en tant que HANDLE se déroule sans histoire.)

  • L'argument 11 désigne les éventuels paramètres à envoyer à la fenêtre, à sa création :

LPVOID lpParam

(LPVOID est en fait un équivalent à void*. Pour ceux ayant fait de la SDL, cet argument possède le même rôle que le paramètre optionnel de type void* des timers.)

Et maintenant que vous connaissez chacun des arguments de la fonction CreateWindow, passons au codage pour créer une fenêtre :

fenetePrincipale = CreateWindow("classeF",
"Première fenêtre en winAPI !",
WS_OVERLAPPEDWINDOW, /*Style qui permet d'avoir une fenêtre tout ce qu'il y a de plus normale : barre de titre, menu système (réduire, maximiser, fermer), bordure etc...*/
CW_USEDEFAULT, // Permet à l'OS de déterminer dynamiquement la position de la fenêtre
CW_USEDEFAULT, //Idem
400,
300,
NULL, // Pas de fenêtre parent, puisque c'est la principale
NULL, //Aucun menu ne lui est associé
cetteInstance,
NULL); // Aucun paramètre à lui envoyer en plus

Mais la fenêtre ne s'affichera pas pour autant. :o Elle est créée, mais c'est tout. ^^

Notez qu'elle aurait pu l'être en possédant le style WS_VISIBLE.

Pour l'afficher, il faut appeler la fonction ShowWindow ! Celle-ci prend en premier paramètre le handle de la fenêtre dont on veut changer le mode d'affichage, et un integer déterminant son mode. Vous pouvez soit utiliser le paramètre de WinMain modeDAffichage, soit utiliser la valeur qu'il prend d'habitude : SW_SHOW. Donc :

ShowWindow(fenetrePrincipale,SW_SHOW);

Maintenant que la fenêtre est en mode "affichée", il faut rafraîchir l'écran afin de la montrer à l'utilisateur : c'est le rôle de UpdateWindow, prenant comme seul paramètre le handle de la fenêtre. Vous l'utiliserez sûrement beaucoup après avoir créé des contrôles enfants d'une fenêtre, afin de rafraîchir l'écran juste après leur création.

Boucle événementielle

Afin d'interfacer l'utilisateur avec la fenêtre, nous avons besoin d'une boucle événementielle traitant les messages créés par l'utilisateur (qui ne le sait même pas :p ) et destinés aux fenêtres concernées.
Pour cela, nous allons utiliser une nouvelle fonction que voici :

BOOL GetMessage(LPMSG msg, HWND hwnd, UINT wMsgFilterMin, UINT wMsgFilterMax);

  • L'argument 1 désigne le message récupérateur des événements :

LPMSG msg

(Comme vous l'avez peut être deviné, les deux lettres 'LP' désignent un pointeur sur le type adjacent...)

  • L'argument 2 désigne le handle de fenêtre dont GetMessage va récupérer les événements (s'il est égal à NULL, GetMessage traitera toutes les fenêtres de l'instance) :

HWND hwnd

Les deux autres paramètres ne sont pas très importants pour le moment (je ne voudrais pas que vous partiez avant votre première fenêtre ;) ). Mettez-les donc à zéro.

Donc, mettons en place la boucle :

while (GetMessage(&message, NULL, 0, 0)) /*Récupération des évènements de toutes les fenêtres de l'instance dans message*/
{
TranslateMessage(&message); // Traduction de l'événement
DispatchMessage(&message); // Envoi du message correspondant à la fenêtre concernée
}

La fonction callback

Cf glossaire

Vous vous rappelez le champ de structure de classeFenetre où on a donné le nom d'une fonction callback ? Eh bien définissons-la. ^^ Voilà déjà son prototype :

LRESULT CALLBACK procedureFenetrePrincipale(HWND fenetrePrincipale, UINT message, WPARAM wParam, LPARAM lParam);

Son type de retour est assez spécial, mais j'ai choisi de ne pas vous le détailler ici, pour ne pas vous encombrer la tête avec des choses inutiles.

  • Le paramètre 1 désigne le handle de la fenêtre concernée :

HWND fenetrePrincipale

  • Le paramètre 2 désigne le message envoyé par la boucle événementielle traitée :

UINT message

  • Les paramètres 3 et 4 désignent des pointeurs d'int chargés d'apporter des précisions sur l'origine du message :

WPARAM wParam, LPARAM lParam

Ces paramètres vous seront décrits un peu plus tard, quand nous parlerons plus en détail des messages créés par l'utilisateur.

La fonction callback étant un traitement des messages envoyés à la fenêtre, elle est chargée de faire telle ou telle action en fonction de tel ou tel message. C'est heureusement nous qui devons la coder. :p

Dans un premier temps, je vous propose de gérer les messages à l'intérieur de cette fonction de la manière suivante :

LRESULT CALLBACK procedureFenetrePrincipale(HWND fenetrePrincipale, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_CREATE:
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(fenetrePrincipale, message, wParam, lParam);
}
}

Le switch détermine quel message a été perçu par GetMessage :

  • WM_CREATE est envoyé à la création de la fenêtre. (Vous pourrez par ailleurs récupérer l'argument optionnel n°11 de CreateWindow à cet endroit.)
  • WM_DESTROY est envoyé lors de la destruction de la fenêtre. Par défaut (vous verrez que nous pouvons le changer), il est déclenché par WM_CLOSE, correspondant à un clic sur la croix en haut à droite que vous connaissez si bien ;) . Ici, il est traité, et PostQuitMessage est exécuté : il s'agit d'une fonction permettant de quitter simplement et proprement le programme. Elle prend comme unique argument 0.
  • Si aucun message déclaré explicitement n'est perçu, on retourne la procédure par défaut fournie par DefWindowProc.

Code complet

Et voilà : vous êtes prêts pour créer votre première fenêtre ! En combinant le tout, vous devriez avoir ce code-ci :magicien: :

#include <windows.h>
LRESULT CALLBACK procedureFenetrePrincipale(HWND, UINT, WPARAM, LPARAM);
int WinMain (HINSTANCE cetteInstance, HINSTANCE precedenteInstance,
LPSTR lignesDeCommande, int modeDAffichage)
{
HWND fenetrePrincipale;
MSG message;
WNDCLASS classeFenetre;
classeFenetre.style = 0;
classeFenetre.lpfnWndProc = procedureFenetrePrincipale;
classeFenetre.cbClsExtra = 0;
classeFenetre.cbWndExtra = 0;
classeFenetre.hInstance = NULL;
classeFenetre.hIcon = LoadIcon(NULL, IDI_APPLICATION);
classeFenetre.hCursor = LoadCursor(NULL, IDC_ARROW);
classeFenetre.hbrBackground = (HBRUSH)(1 + COLOR_BTNFACE);
classeFenetre.lpszMenuName = NULL;
classeFenetre.lpszClassName = "classeF";
// On prévoit quand même le cas où ça échoue
if(!RegisterClass(&classeFenetre)) return FALSE;
fenetrePrincipale = CreateWindow("classeF", "Ma première fenêtre winAPI !", WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, 400, 300,
NULL, NULL, cetteInstance, NULL);
if (!fenetrePrincipale) return FALSE;
ShowWindow(fenetrePrincipale, modeDAffichage);
UpdateWindow(fenetrePrincipale);
while (GetMessage(&message, NULL, 0, 0))
{
TranslateMessage(&message);
DispatchMessage(&message);
}
return message.wParam;
}
LRESULT CALLBACK procedureFenetrePrincipale(HWND fenetrePrincipale, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_CREATE:
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(fenetrePrincipale, message, wParam, lParam);
}
}

Et vous obtenez cette oeuvre magnifique (il ne faut pas exagérer quand même :-° ) :

Enfin, presque ;) . Vous aurez sûrement une barre de titre différente, à cause du thème de Windows.

Voilà, ce premier chapitre est terminé, j'espère qu'il vous a plu :) . Ne vous découragez surtout pas face à la longueur du code, car cela en vaut la peine, et cela va rentrer progressivement en tant qu'automatisme.

Rédacteur : Mg++

Elle est vide, ma fenêtre !

Pour le moment, votre fenêtre vous paraît sûrement vide et terne ... nous allons l'animer un peu ;) . Nous allons voir ici comment créer des boutons, comment les manipuler, et comment faire apparaître un message à l'utilisateur.

Déjà, incorporez ou chargez le code obtenu dans la dernière sous-partie afin d'afficher une fenêtre (changez aussi les dimensions de 300 de hauteur à 110, cela sera plus esthétique :) ).

Création des boutons

Je vous propose dans cette sous-partie de créer deux boutons : un permettant d'afficher une information à l'utilisateur, et un autre pour quitter (ce n'est pas pour rien que je l'incorpore, vous allez pouvoir avoir plus de précisions sur la gestion des messages).

Les boutons sont créés à partir d'une fonction que vous connaissez bien désormais : CreateWindow.

:-° Mais je croyais que c'était pour faire des fenêtres ?

Oui, mais les contrôles sont considérés comme des fenêtres, enfants (donc "attachées" si vous voulez) de la fenêtre parent. Seules les classes de fenêtres sont différentes selon le contrôle. Vous vous rappelez de la classe que nous avons créée pour la fenêtre principale, classeFenetre ? Eh bien, pour les contrôles, les classes sont prédéfinies. On trouve donc comme classes :

  • BUTTON : permettant de créer un bouton.
  • LISTBOX : permettant de créer une liste de choix.
  • STATIC : permettant toutes sortes de choses, comme des images, des groupbox, etc.
  • Et bien d'autres...

Vous verrez ces contrôles basiques lors du prochain chapitre.

Comme vous vous en doutez, nous allons donc utiliser la classe BUTTON. Avant de les créer, vous devez savoir une chose : les contrôles sont gérés (grâce aux messages, notifications [servant à avertir d'un événement secondaire]...) à partir soit d'un handle (pratique n'est ce pas ? ^^ ), soit d'un ID, défini grâce à :

#define ID 1

Où ID est généralement un mot l'identifiant bien (par convention, en majuscule), et suivi d'un nombre le remplaçant lors de la compilation. (Il faut avouer que recevoir le message ' CLIC ' est plus pratique que ' 02123 ' par exemple. Surtout quand les IDs se multiplient...)

Donc, nous allons d'abord créer les handles de boutons, dans un tableau pour plus d'accessibilité. Les contrôles sont déclarés au début du callback de la fenêtre à laquelle ils appartiennent :

LRESULT CALLBACK procedureFenetrePrincipale(HWND fenetrePrincipale, UINT message, WPARAM wParam, LPARAM lParam)
{
static HWND boutons[2] = {NULL};

Veillez à bien mettre le mot-clé static lors de la déclaration d'une variable permanente : celui-ci permet à la variable d'avoir la même portée, soit, mais surtout une durée de vie commune à celle de la fenêtre.

C'est une méthode quelque peu barbare, surtout quand on a beaucoup de variables permanentes, mais j'ai choisi de vous en parler, car vous connaissez normalement déjà ce mot-clé ;) . Cependant, j'envisage de vous parler d'une autre méthode (meilleure) plus tard. Pour les curieux, il s'agit de la combinaison de SetWindowLong() avec GetWindowLong() (et leur déclinaison ~Ptr), permettant d'utiliser les membres de la WindowClass cbClsExtra et cbWndExtra.

Intégrez au préalable les définitions des ID des boutons au début de votre code :

#define ID_B_PARLER 0
#define ID_B_QUITTER 1

Dernière chose : vous vous rappelez le prototype de CreateWindow ? Cette fonction demandait l'instance. Or, la fonction callback n'entre pas dans la portée de cette variable. Nous sommes alors contraints d'en faire une variable globale.
Déclarez une variable globale comme suit :

HINSTANCE instance;

Et, en guise de première instruction (de préférence après les déclarations de variables) de WinMain, copiez cetteInstance dans instance comme suit :

instance = cetteInstance;

Bien. Maintenant, nous sommes prêts à créer les boutons. Cette opération se fait en général dans le WM_CREATE, puisqu'ils sont créés en même temps que la fenêtre parent :

case WM_CREATE:
boutons[0] = CreateWindow("BUTTON", "Parler", WS_CHILD | WS_VISIBLE,
5, 5, 383, 30, fenetrePrincipale, ID_B_PARLER, instance, NULL);
boutons[1] = CreateWindow("BUTTON", "Quitter", WS_CHILD | WS_VISIBLE,
5, 45, 383, 30, fenetrePrincipale, ID_B_QUITTER, instance, NULL);
return 0;

Comme vous pouvez le voir, les styles WS_CHILD et WS_VISIBLE sont appliqués aux boutons :

  • WS_CHILD solidarise le contrôle à la fenêtre parent. Sans lui, le contrôle flotterait "en l'air", en dehors de la fenêtre.
  • WS_VISIBLE affiche le contrôle (donc, pas besoin de ShowWindow).

Vous pouvez voir alors que les ID sont, comme je l'ai dit pendant la description de cette fonction, à la place du menu normalement associé à une fenêtre.

Si une erreur de type "Invalid conversion from...to..." se présente, effectuez un cast de la variable passée en paramètre en type attendu. En effet, le typage est plus strict en C++ qu'en C.

Les boutons sont maintenant créés, mais n'ont aucune action.

Gestion de l'enfoncement du bouton

Maintenant que les boutons existent, il nous faut les associer à des actions particulières. Tout d'abord, un peu de théorie. Je vous ai dit que le switch du message déterminait le message perçu : celui-ci a pu être dans le cas précédent WM_CREATE, ou WM_DESTROY. Mais ce message est complété par wParam et lParam, passés à la fonction callback. Ceux-ci contiennent des messages complémentaires, ou des notifications. Ces paramètres étant des doubles mots, on peut récupérer le mot bas et le mot haut de chacun de ces deux paramètres grâce aux macros LOWORD() ou HIWORD().

Justement, quand un bouton est enfoncé, le message vaut WM_COMMAND, et le mot bas de wParam détermine l'ID du bouton qui a été cliqué, et qui a donc envoyé ce message. En l'utilisant dans notre code, on obtient donc :

case WM_COMMAND:
switch(LOWORD(wParam))
{
case ID_B_PARLER:
//Ici l'instruction associée à "Parler"
break;
case ID_B_QUITTER:
//Là l'instruction associée à "Quitter"
break;
}
return 0;

Ainsi, si le bouton "Parler" a été cliqué, le message vaudra WM_COMMAND, et un test du mot bas du paramètre wParam indiquera l'ID de celui ci, ou ID_B_PARLER.

Peut-on, nous (à travers du code), envoyer des messages ?

Ça tombe bien, je voulais l'utiliser pour le bouton "Quitter". :p En effet, ce bouton a le même effet que "la croix". Comme son message associé est WM_DESTROY, nous allons donc envoyer le message WM_DESTROY à la fenêtre principale quand le bouton "Quitter" a été cliqué.

La fonction permettant d'y arriver s'appelle SendMessage (quelle coïncidence ^^) ; son prototype est le suivant :

LRESULT SendMessage(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);

Vous l'avez deviné, SendMessage ne fait qu'exécuter la fonction callback avec le message spécifié dans msg, les paramètres spécifiés dans wParam et lParam, et retourne ce que retourne le callback (logique).

Très pratique, vous vous en servirez beaucoup, je vous l'assure ^^ .

En l'adaptant à notre code, nous obtenons ceci :

SendMessage(fenetrePrincipale, WM_DESTROY, 0, 0);

Les paramètres n'étant pas utilisés, nous les mettons à zéro. Ce bout de code est évidemment à mettre dans le ' case ID_B_QUITTER '.

Le bouton "Quitter" est donc opérationnel. Occupons-nous maintenant du bouton "Parler". Ce bouton doit avoir pour effet d'afficher quelque chose à l'utilisateur : par exemple, de l'informer que le bouton a été cliqué (bon d'accord, ce n'est pas très original, mais ce sont les bases :p ). Et pour cela, rien de mieux que MessageBox.

MessageBox

Cette fonction, dont le prototype est le suivant :

int MessageBox(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType);

affiche une petite messagebox portant comme titre la chaîne spécifiée par lpCaption, comme texte celui spécifié par lpText, étant rattachée à la fenêtre spécifiée par hWnd et ayant comme style ceux spécifiés dans uType.

Vraiment, vous ne connaissez pas ? Vous avez été bercé aux doux sons des erreurs, ou aux warnings de non-sauvegarde en quittant, tous deux rapportés grâce aux messages boxes. :p

Les icônes et boutons de celles-ci sont déterminés grâce au paramètre uType, mais la liste ne sera pas donnée ici.

Vous trouverez la liste complète dans notre mini-documentation.

Donc, en utilisant cette fonction en guise de réponse à un clic sur "Parler", on obtient ce code :

MessageBox(fenetrePrincipale, "Clic !", "Bonjour.", MB_ICONINFORMATION);

MB_ICONINFORMATION est une constante permettant d'ajouter un bouton 'OK' à la messagebox, et une icône en forme de bulle.
Vous n'avez plus qu'à placer ce code dans le 'case ID_B_PARLER' du callback.

Code complet

Eh bien j'ai l'impression que l'on a fini notre modeste programme ! En voici donc le code complet :

#include <windows.h>
#define ID_B_PARLER 0
#define ID_B_QUITTER 1
HINSTANCE instance;
LRESULT CALLBACK procedureFenetrePrincipale(HWND, UINT, WPARAM, LPARAM);
int WinMain (HINSTANCE cetteInstance, HINSTANCE precedenteInstance,
LPSTR lignesDeCommande, int modeDAffichage)
{
HWND fenetrePrincipale;
MSG message;
WNDCLASS classeFenetre;
instance = cetteInstance;
classeFenetre.style = 0;
classeFenetre.lpfnWndProc = procedureFenetrePrincipale;
classeFenetre.cbClsExtra = 0;
classeFenetre.cbWndExtra = 0;
classeFenetre.hInstance = NULL;
classeFenetre.hIcon = LoadIcon(NULL, IDI_APPLICATION);
classeFenetre.hCursor = LoadCursor(NULL, IDC_ARROW);
classeFenetre.hbrBackground = (HBRUSH)(1 + COLOR_BTNFACE);
classeFenetre.lpszMenuName = NULL;
classeFenetre.lpszClassName = "classeF";
// On prévoit quand même le cas où ça échoue
if(!RegisterClass(&classeFenetre)) return FALSE;
fenetrePrincipale = CreateWindow("classeF", "Ma premiere fenetre winAPI !", WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, 400, 110,
NULL, NULL, cetteInstance, NULL);
if (!fenetrePrincipale) return FALSE;
ShowWindow(fenetrePrincipale, modeDAffichage);
UpdateWindow(fenetrePrincipale);
while (GetMessage(&message, NULL, 0, 0))
{
TranslateMessage(&message);
DispatchMessage(&message);
}
return message.wParam;
}
LRESULT CALLBACK procedureFenetrePrincipale(HWND fenetrePrincipale, UINT message, WPARAM wParam, LPARAM lParam)
{
static HWND boutons[2] = {NULL};
switch (message)
{
case WM_CREATE:
boutons[0] = CreateWindow("BUTTON", "Parler", WS_CHILD | WS_VISIBLE,
5, 5, 383, 30, fenetrePrincipale, (HMENU)ID_B_PARLER, instance, NULL);
boutons[1] = CreateWindow("BUTTON", "Quitter", WS_CHILD | WS_VISIBLE,
5, 45, 383, 30, fenetrePrincipale, (HMENU)ID_B_QUITTER, instance, NULL);
return 0;
case WM_COMMAND:
switch(LOWORD(wParam))
{
case ID_B_PARLER:
MessageBox(fenetrePrincipale, "Clic", "Bonjour.", MB_ICONINFORMATION);
break;
case ID_B_QUITTER:
SendMessage(fenetrePrincipale, WM_DESTROY, 0, 0);
break;
}
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(fenetrePrincipale, message, wParam, lParam);
}
}

Résultat :

Puis, avec "Parler" :

Rédacteur : Mg++

Les menus

Vous en voulez toujours plus, n'est-ce pas ? ;) Eh bien vous allez apprendre dans ce chapitre à créer des menus. Pour cela, deux manières de coder :

  • en passant par les ressources
  • dynamiquement en passant par des fonctions.

Nécessaire

En premier lieu, reprenez le code du chapitre précédent. En guise de test, nous créerons un menu "Actions" comportant les deux actions présentes sous la forme de boutons "Parler" et "Quitter".

Peu importe la méthode utilisée, des handles de menus seront nécessaires pour chaque menu, et chaque sous-menu associé à la fenêtre. Ceux-ci comportent le type HMENU :

HMENU menu, sousMenu;

Création du menu

En utilisant des fonctions

Les handles de menus peuvent être alors créés en vue d'un remplissage avec la fonction CreateMenu, ne comportant aucun paramètre :

HMENU CreateMenu(VOID);

Une fois créés, nous pouvons les remplir selon leur type avec la fonction suivante :

BOOL AppendMenu(HMENU hMenu, UINT uFlags, UINT_PTR uIDNewItem, LPCSTR lpNewItem);

Cette fonction, dont le rôle est d'ajouter une entrée, que cela soit une commande ou un sous-menu, comporte les arguments suivants :

  • L'argument 1 désigne le menu auquel est associée l'entrée :

HMENU hMenu

  • L'argument 2 désigne le type de l'entrée, mais aussi par association de flags, des options facultatives (désactivé, coché, illustré, etc.) :

UINT uFlags

  • L'argument 3 désigne, dans le cas d'une commande, son ID (ayant le même effet que ceux des boutons), ou dans le cas d'une entrée popup, le handle du sous-menu associé :

UINT_PTR uIDNewItem

  • L'argument 4 désigne le nom affiché par l'entrée :

LPCSTR lpNewItem

Si vous voulez créer une entrée popup (donc un sous-menu), le uFlags doit correspondre à la valeur MF_POPUP. Dans le cas d'une commande, il doit être égal à MF_STRING.
Les séparateurs peuvent, eux, être créés avec MF_SEPARATOR (les deux derniers paramètres seront alors ignorés).

Bien sûr, les sous-menus doivent être définis avant d'être associés à un menu, ou, dans le cas contraire, celui-ci n'aurait rien à intégrer.

Dans notre cas, la création du menu serait comme ceci :

//Déclarations :
HMENU menu, sousMenu;
//...
sousMenu = CreateMenu();
AppendMenu(sousMenu, MF_STRING, ID_B_PARLER, "Parler");
AppendMenu(sousMenu, MF_SEPARATOR, (UINT)NULL, "");
AppendMenu(sousMenu, MF_STRING, ID_B_QUITTER, "Quitter");
menu = CreateMenu();
AppendMenu(menu, MF_POPUP, (UINT)sousMenu, "Actions");

En utilisant les ressources

Les ressources servent à énormément de choses en WinAPI. Elles servent, comme vous le savez, à spécifier les fichiers stockés dans l'exécutable en précisant son ID, type et chemin, mais aussi à définir des accélérateurs clavier (que nous verrons plus tard), des schémas de boîtes de dialogue (dont nous aborderons l'utilisation dans le chapitre suivant), ou encore des schémas de menus (qui nous intéressent ici :p ), et bien d'autres choses.

La création d'un menu en ressource est plus logique qu'en utilisant AppendMenu. Elle observe donc une hiérarchie sous cette forme, qu'on appelle communément template :

ID_MENU MENU
BEGIN
POPUP "Menu"
BEGIN
POPUP "Sous Menu"
BEGIN
MENUITEM "Truc", ID_TRUC
MENUITEM SEPARATOR
MENUITEM "Machin", ID_MACHIN
END
MENUITEM "Groar", ID_GROAR
END
POPUP "Menu2"
BEGIN
MENUITEM "Miaou", ID_MIAOU
END
END

(Bon d'accord, vive les noms... mais c'était pour vous montrer les différents cas possibles :-° .)

Vous ne connaissez sûrement pas les mots-clés BEGIN et END : en fait, il s'agit d'une autre notation utilisée en ressources pour les accolades ouvrantes et fermantes.

Comme vous pouvez le voir, ID_MENU n'est pas visible : il s'agit de l'identificateur du menu. (D'ailleurs, bien qu'il soit un ID, il n'a pas besoin d'être défini.) Seules les entrées entre ses BEGIN et END sont visibles : POPUP désigne les menus déroulants, et MENUITEM une commande (je suppose que vous savez ce que signifie SEPARATOR désormais ;) ). Les ID de chaque commande doivent être spécifiés après le nom affiché et une virgule.

On peut, tout comme AppendMenu, lui appliquer des flags permettant de cocher l'entrée, la désactiver, etc. ; dans ce cas-ci, elles sont spécifiées à la suite après l'ID de la commande et une virgule séparatrice.

Pour notre exemple, le code en ressource serait le suivant :

ID_MENU MENU
BEGIN
POPUP "Actions"
BEGIN
MENUITEM "Parler", ID_B_PARLER
MENUITEM "Quitter", ID_B_QUITTER
END
END

Bien. Après avoir créé le menu, encore faut-il le récupérer pour l'associer à la fenêtre. Pour cela, on utilise LoadMenu. Cette fonction, prenant comme premier paramètre l'instance actuelle, et en deuxième l'ID du menu, se charge de renvoyer un handle de menu. En utilisant ce handle de menu, vous pourrez l'utiliser lors de CreateWindow ou SetMenu (voir méthodes d'associations ci-après).

Si vous utilisez la classe de fenêtre pour l'association, vous pouvez vous passer de ce passage, et indiquer de suite l'ID du menu au champ de la classe correspondante.

Association du menu avec la fenêtre

Afin d'intégrer le menu à la fenêtre, vous avez trois méthodes.

  • Dans le cas d'une définition sans ressources (ou avec, mais en utilisant LoadMenu), à la création de la fenêtre, vous devez passer le nom du menu parent (ici menu) au paramètre n°9 de CreateWindow, étant hMenu, sans guillemets. Exemple :

fenetrePrincipale = CreateWindow("classeF", "Ma premiere fenetre winAPI !", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, 400, 130, NULL, <gras>menu</gras>, cetteInstance, NULL);

  • Dans le cas d'une définition utilisant les ressources, à la définition de la classe de fenêtre, vous devez passer le nom identificateur du menu au paramètre lpszMenuName de la structure WNDCLASS entre guillemets. Exemple :

classeFenetre.lpszMenuName = "MENU";

  • Dans les deux cas, dans du reste du code, vous pouvez utiliser la fonction SetMenu, prenant comme premier paramètre le nom de la fenêtre à laquelle le menu (précisé dans le paramètre 2 sous HMENU) est associé. Exemple (cas utilisant les ressources) :

SetMenu(fenetrePrincipale, LoadMenu(instance, "ID_MENU"));

Code complet

Contenu des autres fichiers (cas des ressources)

Resource.rc :

#include <windows.h>
#include "constantes.h"
ID_MENU MENU
BEGIN
POPUP "Actions"
BEGIN
MENUITEM "Parler", ID_B_PARLER
MENUITEM SEPARATOR
MENUITEM "Quitter", ID_B_QUITTER
END
END

constantes.h :

#ifndef CONSTANTES_H
#define CONSTANTES_H
#define ID_B_PARLER 0
#define ID_B_QUITTER 1
#endif

(Protection contre les inclusions multiples facultative pour le moment.)

1ère méthode

#include <windows.h>
#define ID_B_PARLER 0
#define ID_B_QUITTER 1
HINSTANCE instance;
LRESULT CALLBACK procedureFenetrePrincipale(HWND, UINT, WPARAM, LPARAM);
int WinMain (HINSTANCE cetteInstance, HINSTANCE precedenteInstance,
LPSTR lignesDeCommande, int modeDAffichage)
{
HWND fenetrePrincipale;
MSG message;
WNDCLASS classeFenetre;
HMENU menu, sousMenu;
instance = cetteInstance;
sousMenu = CreateMenu();
AppendMenu(sousMenu,MF_STRING, ID_B_PARLER, "Parler");
AppendMenu(sousMenu,MF_SEPARATOR, (UINT)NULL, "");
AppendMenu(sousMenu,MF_STRING,ID_B_QUITTER,"Quitter");
menu = CreateMenu();
AppendMenu(menu, MF_POPUP, (UINT)sousMenu, "Actions");
classeFenetre.style = 0;
classeFenetre.lpfnWndProc = procedureFenetrePrincipale;
classeFenetre.cbClsExtra = 0;
classeFenetre.cbWndExtra = 0;
classeFenetre.hInstance = NULL;
classeFenetre.hIcon = LoadIcon(NULL, IDI_APPLICATION);
classeFenetre.hCursor = LoadCursor(NULL, IDC_ARROW);
classeFenetre.hbrBackground = (HBRUSH)(1 + COLOR_BTNFACE);
classeFenetre.lpszMenuName = NULL;
classeFenetre.lpszClassName = "classeF";
// On prévoit quand même le cas où ça échoue
if(!RegisterClass(&classeFenetre)) return FALSE;
fenetrePrincipale = CreateWindow("classeF", "Ma premiere fenetre winAPI !", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, 400, 130, NULL, menu /* Ou LoadMenu(instance, "ID_MENU")*/, cetteInstance, NULL);

if (!fenetrePrincipale) return FALSE;
ShowWindow(fenetrePrincipale, modeDAffichage);
UpdateWindow(fenetrePrincipale);
while (GetMessage(&message, NULL, 0, 0))
{
TranslateMessage(&message);
DispatchMessage(&message);
}
return message.wParam;
}
LRESULT CALLBACK procedureFenetrePrincipale(HWND fenetrePrincipale, UINT message, WPARAM wParam, LPARAM lParam)
{
static HWND boutons[2] = {NULL};
switch (message)
{
case WM_CREATE:
boutons[0] = CreateWindow("BUTTON", "Parler", WS_CHILD | WS_VISIBLE,
5, 5, 383, 30, fenetrePrincipale, (HMENU)ID_B_PARLER, instance, NULL);
boutons[1] = CreateWindow("BUTTON", "Quitter", WS_CHILD | WS_VISIBLE,
5, 45, 383, 30, fenetrePrincipale, (HMENU)ID_B_QUITTER, instance, NULL);
return 0;
case WM_COMMAND:
switch(LOWORD(wParam))
{
case ID_B_PARLER:
MessageBox(fenetrePrincipale, "Clic", "Bonjour.", MB_ICONINFORMATION);
break;
case ID_B_QUITTER:
SendMessage(fenetrePrincipale, WM_DESTROY, 0, 0);
break;
}
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(fenetrePrincipale, message, wParam, lParam);
}
}

2ème méthode

#include <windows.h>
#include "constantes.h"
HINSTANCE instance;
LRESULT CALLBACK procedureFenetrePrincipale(HWND, UINT, WPARAM, LPARAM);
int WinMain (HINSTANCE cetteInstance, HINSTANCE precedenteInstance,
LPSTR lignesDeCommande, int modeDAffichage)
{
HWND fenetrePrincipale;
MSG message;
WNDCLASS classeFenetre;
instance = cetteInstance;
classeFenetre.style = 0;
classeFenetre.lpfnWndProc = procedureFenetrePrincipale;
classeFenetre.cbClsExtra = 0;
classeFenetre.cbWndExtra = 0;
classeFenetre.hInstance = NULL;
classeFenetre.hIcon = LoadIcon(NULL, IDI_APPLICATION);
classeFenetre.hCursor = LoadCursor(NULL, IDC_ARROW);
classeFenetre.hbrBackground = (HBRUSH)(1 + COLOR_BTNFACE);
classeFenetre.lpszMenuName = "ID_MENU";
classeFenetre.lpszClassName = "classeF";
// On prévoit quand même le cas où ça échoue
if(!RegisterClass(&classeFenetre)) return FALSE;
fenetrePrincipale = CreateWindow("classeF", "Ma premiere fenetre winAPI !", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, 400, 130, NULL, NULL, cetteInstance, NULL);

if (!fenetrePrincipale) return FALSE;
ShowWindow(fenetrePrincipale, modeDAffichage);
UpdateWindow(fenetrePrincipale);
while (GetMessage(&message, NULL, 0, 0))
{
TranslateMessage(&message);
DispatchMessage(&message);
}
return message.wParam;
}
LRESULT CALLBACK procedureFenetrePrincipale(HWND fenetrePrincipale, UINT message, WPARAM wParam, LPARAM lParam)
{
static HWND boutons[2] = {NULL};
switch (message)
{
case WM_CREATE:
boutons[0] = CreateWindow("BUTTON", "Parler", WS_CHILD | WS_VISIBLE,
5, 5, 383, 30, fenetrePrincipale, (HMENU)ID_B_PARLER, instance, NULL);
boutons[1] = CreateWindow("BUTTON", "Quitter", WS_CHILD | WS_VISIBLE,
5, 45, 383, 30, fenetrePrincipale, (HMENU)ID_B_QUITTER, instance, NULL);
return 0;
case WM_COMMAND:
switch(LOWORD(wParam))
{
case ID_B_PARLER:
MessageBox(fenetrePrincipale, "Clic", "Bonjour.", MB_ICONINFORMATION);
break;
case ID_B_QUITTER:
SendMessage(fenetrePrincipale, WM_DESTROY, 0, 0);
break;
}
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(fenetrePrincipale, message, wParam, lParam);
}
}

3ème méthode

#include <windows.h>
#include "constantes.h"
HINSTANCE instance;
LRESULT CALLBACK procedureFenetrePrincipale(HWND, UINT, WPARAM, LPARAM);
int WinMain (HINSTANCE cetteInstance, HINSTANCE precedenteInstance,
LPSTR lignesDeCommande, int modeDAffichage)
{
HWND fenetrePrincipale;
MSG message;
WNDCLASS classeFenetre;
instance = cetteInstance;
classeFenetre.style = 0;
classeFenetre.lpfnWndProc = procedureFenetrePrincipale;
classeFenetre.cbClsExtra = 0;
classeFenetre.cbWndExtra = 0;
classeFenetre.hInstance = NULL;
classeFenetre.hIcon = LoadIcon(NULL, IDI_APPLICATION);
classeFenetre.hCursor = LoadCursor(NULL, IDC_ARROW);
classeFenetre.hbrBackground = (HBRUSH)(1 + COLOR_BTNFACE);
classeFenetre.lpszMenuName = NULL;
classeFenetre.lpszClassName = "classeF";
// On prévoit quand même le cas où ça échoue
if(!RegisterClass(&classeFenetre)) return FALSE;
fenetrePrincipale = CreateWindow("classeF", "Ma premiere fenetre winAPI !", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, 400, 130, NULL, NULL, cetteInstance, NULL);
if (!fenetrePrincipale) return FALSE;
ShowWindow(fenetrePrincipale, modeDAffichage);
UpdateWindow(fenetrePrincipale);
while (GetMessage(&message, NULL, 0, 0))
{
TranslateMessage(&message);
DispatchMessage(&message);
}
return message.wParam;
}
LRESULT CALLBACK procedureFenetrePrincipale(HWND fenetrePrincipale, UINT message, WPARAM wParam, LPARAM lParam)
{
static HWND boutons[2] = {NULL};
switch (message)
{
case WM_CREATE:
boutons[0] = CreateWindow("BUTTON", "Parler", WS_CHILD | WS_VISIBLE,
5, 5, 383, 30, fenetrePrincipale, (HMENU)ID_B_PARLER, instance, NULL);
boutons[1] = CreateWindow("BUTTON", "Quitter", WS_CHILD | WS_VISIBLE,
5, 45, 383, 30, fenetrePrincipale, (HMENU)ID_B_QUITTER, instance, NULL);
SetMenu(fenetrePrincipale, LoadMenu(instance, "ID_MENU"));
/*Ou dans le cas manuel, SetMenu(fenetrePrincipale, menu); où menu a été d"jà créé*/
return 0;
case WM_COMMAND:
switch(LOWORD(wParam))
{
case ID_B_PARLER:
MessageBox(fenetrePrincipale, "Clic", "Bonjour.", MB_ICONINFORMATION);
break;
case ID_B_QUITTER:
SendMessage(fenetrePrincipale, WM_DESTROY, 0, 0);
break;
}
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(fenetrePrincipale, message, wParam, lParam);
}
}

Résultat :

Pour aller plus loin

Activer / désactiver une entrée
  • Dès la création du menu : spécifier le flag MF_DISABLED pour désactiver l'entrée (MF_ENABLED, permettant de l'activer, étant par défaut), ou MF_GRAYED pour le griser. Exemple :

MENUITEM "Parler", ID_B_PARLER, MF_GRAYED

  • Dans le reste du code : utiliser la fonction EnableMenuItem, prenant comme premier paramètre le handle de menu, comme deuxième soit l'emplacement (basé sur 0) de l'entrée, soit sa commande (le choix étant spécifié par la valeur du troisième paramètre), et comme troisième son mode, par combinaison de son mode de détermination (MF_BYCOMMAND implique d'utiliser la commande pour le deuxième paramètre, et MF_BYPOSITION l'inverse) et du mode d'affichage, étant les mêmes valeurs possibles que pour les flags des entrées décrits ci-dessus. Exemple :

EnableMenuItem(menu, ID_B_PARLER, MF_BYCOMMAND | MF_GRAYED);

Cocher / Décocher une entrée
  • Dès la création du menu, on peut spécifier le flag MF_CHECKED (pour coché) ou MF_UNCHECKED (valeur par défaut, non coché). Exemple :

MENUITEM "Parler", ID_B_PARLER, MF_CHECKED

  • Dans le reste du code : utiliser la fonction CheckMenuItem, prenant comme premier paramètre le handle de menu concerné, et pour les deuxième et troisième paramètres, le même système que pour EnableMenuItem, excepté le fait que les états possibles sont ceux spécifiés ci-dessus. Exemple :

CheckMenuItem(menu, ID_B_PARLER, MF_BYCOMMAND | MF_CHECKED);

MF_BYCOMMAND permet d'utiliser la commande de l'élément de menu concerné comme moyen de le déterminer, mais rien ne vous empêche d'utiliser MF_BYPOSITION pour son index.

Ajouter une icône à un élément de menu

Utilisez SetMenuItemBitmaps() , comme illustré dans l'exemple suivant :

SetMenuItemBitmaps(
hMenu,
ID_PARLER,
MF_BYCOMMAND,
LoadBitmap(hInstance, "talkBtnBmp_normal"),
LoadBitmap(hInstance, "talkBtnBmp_selected")
);

Rédacteur : Mg++

Les boîtes de dialogue

Nous allons maintenant aborder les boîtes de dialogue. Pour ce chapitre, l'objectif sera juste d'ajouter une boîte de dialogue simple (comportant une icône et du texte) faisant office d'"A propos".

Préparation

Pour faire apparaître la boîte de dialogue, nous avons besoin d'une commande. Pour cela, nous allons rajouter un menu popup, au même niveau que "Actions", mais ayant pour nom "Aide". Dans celui-ci, une entrée-commande sera ajoutée, portant "A propos" comme nom, et ID_B_APROPOS comme ID.

Pour cela, ajoutez (exemple utilisant les ressources : adaptez en conséquence pour les autres méthodes) :

POPUP "Aide"
BEGIN
MENUITEM "A propos", ID_B_APROPOS
END

dans le template du menu en ressources.

ID_B_APROPOS devra être par ailleurs défini dans constantes.h.

Enfin et bien sûr, ajoutez un nouveau 'case' portant cet ID dans le switch du mot faible du message WM_COMMAND. Nous le remplirons plus tard.

La création d'une boîte de dialogue exige deux parties distinctes : la définition de son template, et sa création proprement dite. Voyons chacune de ces étapes.

Template ressource

Vous vous souvenez du template d'un menu en ressources ? C'est à peu près pareil pour une boîte de dialogue, excepté le fait que le mot-clé MENU est remplacé par DIALOG (ou DIALOGEX, si vous utilisez des styles étendus), et des informations supplémentaires comme sa position / largeur / hauteur, ses styles et son titre sont rajoutés juste avant la définition. Un schéma basique de boîte de dialogue peut alors être le suivant :

ID_DIALOGUE DIALOG
CW_USEDEFAULT, CW_USEDEFAULT, 200, 120
STYLE WS_OVERLAPPEDWINDOW
CAPTION "Titre"
BEGIN
END

L'ordre des ajouts n'est pas important, excepté le fait que les positions (les quatre paramètres entre virgules) de la boîte de dialogue doivent être les premiers à être définis.
WS_OVERLAPPEDWINDOW rend la boîte de dialogue modale, parfaitement banale : barre de titre, menu système (réduire, fermer, etc.)... tous les styles applicables aux fenêtres principales (contenus donc dans le champ uStyle de la WNDCLASS) le sont ici. Quant à CAPTION (dont la traduction française donne "Titre"), il indique la chaîne de caractères à afficher dans la barre de titre (d'où son nom).

Vous pouvez consulter tous les styles applicables aux boîtes de dialogue dans la documentation ci-jointe.

Chaque ajout de contrôle s'exécute par l'intermédiaire de mots-clés. Sauf exception (informations en surplus nécessaires, etc.), les lignes de "déclaration" de contrôles en utilisant ces mots-clés possèdent une organisation de ce type :

MOTCLE TEXTE_ASSOCIE, ID, x, y, w, h, STYLES

Où x et y sont les coordonnées du coin supérieur gauche du contrôle, et w et h les dimensions du contrôle.

Par exemple, un bouton possède comme mot clé PUSHBUTTON. S'il est le bouton par défaut, il est alors DEFPUSHBUTTON.
Autre exemple (je ne les choisis pas au hasard ;) ) : une icône possède le même mot-clé que pendant une intégration à l'exécutable de celle-ci, en passant par les ressources, à savoir ICON.
Enfin, du texte peut être affiché avec le mot clé LTEXT (justifié à gauche) ou RTEXT (justifié à droite).

D'autres mots-clés seront présentés en même temps que le cours sur le contrôle concerné (prochaine partie).

Maintenant que vous savez tout ceci, vous êtes prêts à définir le template de votre boîte de dialogue. En premier lieu, intégrez à l'exécutable l'icône voulue avec, comme vous le savez, la syntaxe suivante :

icone1 ICON "chemin/icone.ico"

Je vous propose donc :

APROPOS DIALOG
CW_USEDEFAULT, CW_USEDEFAULT, 200, 120
CAPTION "Titre"
STYLE WS_OVERLAPPEDWINDOW
BEGIN
DEFPUSHBUTTON "Ok", IDOK, 96, 90, 42, 12
ICON icone1, -1, 60, 55, 32, 32
LTEXT "A propos test des boîtes de dialogue", -1, 100, 58, 100, 10
END

IDOK est déjà déclaré avec l'API, tout comme IDCANCEL et d'autres.

-1 est spécifié quand le contrôle n'a pas besoin d'ID (comme les icônes ou ici les textes).

Maintenant que le schéma est créé, passons à la création proprement dite.

Création

Pour créer la boîte de dialogue, deux méthodes : soit vous en faites une indépendante, de déco, etc., soit vous voulez la manipuler.

Les fonctions utilisées auront chacune un but spécifique, mais rien ne vous empêche d'utiliser l'une ou l'autre tout le temps. Ce sont juste des questions de goûts et de besoins.

Vous pouvez donc utiliser soit CreateDialog, soit DialogBox. Leur prototype est presque pareil : elles possèdent toutes deux les mêmes paramètres, mais CreateDialog permet de récupérer un handle de fenêtre sur la boîte de dialogue créée (ce qui vous fait donc deviner que CreateDialog est la fonction à utiliser, si vous voulez manipuler la boîte de dialogue à partir d'une autre fenêtre, récupérer des infos, etc.).
Voici donc leurs paramètres :

  • Le premier désigne l'instance actuelle :

HINSTANCE hInstance

  • Le deuxième désigne le template à utiliser, donc l'ID (plutôt une chaîne identifiante) de la boîte de dialogue entre guillemets :

LPCTSTR lpTemplate

  • Le troisième désigne le handle de la fenêtre parent :

HWND hWndParent

  • Le dernier désigne la fonction callback de la boîte de dialogue (un cast sera peut être nécessaire) :

DLGPROC lpDialogFunc

L'intérêt de CreateDialog subsiste dans le fait que la boîte de dialogue peut être créée au tout début, être manipulée entre temps et affichée quand on la demande. Mais tout comme DialogBox, elle s'affiche juste après être créée. Vous allez donc peut être avoir recours à ShowWindow.

Vous pouvez aussi passer des paramètres aux boîtes de dialogue créées, en utilisant DialogBoxParam ou CreateDialogParam permettant d'envoyer une information (structure) dans le paramètre lParam du message WM_INITDIALOG (celui-ci étant donc passé dans le 5ème paramètre de ces deux fonctions).

Donc, si on choisit par exemple DialogBox comme fonction, on aura alors l'extrait de code suivant :

case WM_COMMAND:
switch(LOWORD(wParam))
{
case ID_B_APROPOS:
DialogBox(instance, "APROPOS", fenetrePrincipale, (DLGPROC)aPropos_procedure);
break;

Or, aPropos_procedure n'existe pas. Nous allons donc nous occuper de sa fonction callback.

La fonction callback

Similaire à la procédure de la fenêtre principale, elle possède néanmoins un type de retour différent : BOOL APIENTRY. Je ne vais pas non plus le décrire ici.

Quelques différences notoires : WM_CREATE a été remplacé par WM_INITDIALOG, et WM_DESTROY n'est pas envoyé : EndDialog s'occupe de fermer la fenêtre (donc à ne pas utiliser de suite avec CreateDialog) en prenant comme paramètre : le handle de la boîte de dialogue, et 0.

On peut donc avoir la procédure suivante :

BOOL APIENTRY aPropos_procedure(HWND boiteDeDialogue,UINT message,WPARAM wParam,LPARAM lParam)
{
switch (message)
{
case WM_INITDIALOG:
return TRUE;
case WM_COMMAND:
if (LOWORD(wParam) == IDCANCEL || LOWORD(wParam) == IDOK)
{
EndDialog(boiteDeDialogue,0);
return TRUE;
}
return 0;
default:
return FALSE;
}
}

Votre boîte de dialogue est alors achevée !

Code complet

Voici maintenant le code complet :

ressource.rc :

#include <windows.h>
#include "constantes.h"
icone1 ICON "Icones/icone.ico"
ID_MENU MENU
BEGIN
POPUP "Actions"
BEGIN
MENUITEM "Parler", ID_B_PARLER
MENUITEM SEPARATOR
MENUITEM "Quitter", ID_B_QUITTER
END
POPUP "Aide"
BEGIN
MENUITEM "A propos", ID_B_APROPOS
END
END
APROPOS DIALOG
CW_USEDEFAULT, CW_USEDEFAULT, 200, 120
CAPTION "Titre"
STYLE WS_OVERLAPPEDWINDOW
BEGIN
DEFPUSHBUTTON "Ok", IDOK, 76, 90, 42, 12
ICON icone1, -1, 30, 50, 32, 32
LTEXT "A propos test des boîtes de dialogue", -1, 60, 38, 200, 10
END

constantes.h :

#ifndef CONSTANTES_H
#define CONSTANTES_H
#define ID_B_PARLER 0
#define ID_B_QUITTER 1
#define ID_B_APROPOS 2
#endif

main.cpp :

#include <windows.h>
#include "constantes.h"
HINSTANCE instance;
LRESULT CALLBACK procedureFenetrePrincipale(HWND, UINT, WPARAM, LPARAM);
BOOL APIENTRY aPropos_procedure(HWND hDlg,UINT uMsg,WPARAM wParam,LPARAM lParam);
int WinMain (HINSTANCE cetteInstance, HINSTANCE precedenteInstance,
LPSTR lignesDeCommande, int modeDAffichage)
{
HWND fenetrePrincipale;
MSG message;
WNDCLASS classeFenetre;
instance = cetteInstance;
classeFenetre.style = 0;
classeFenetre.lpfnWndProc = procedureFenetrePrincipale;
classeFenetre.cbClsExtra = 0;
classeFenetre.cbWndExtra = 0;
classeFenetre.hInstance = NULL;
classeFenetre.hIcon = LoadIcon(NULL, IDI_APPLICATION);
classeFenetre.hCursor = LoadCursor(NULL, IDC_ARROW);
classeFenetre.hbrBackground = (HBRUSH)(1 + COLOR_BTNFACE);
classeFenetre.lpszMenuName = NULL;
classeFenetre.lpszClassName = "classeF";
// On prévoit quand même le cas où ça échoue
if(!RegisterClass(&classeFenetre)) return FALSE;
fenetrePrincipale = CreateWindow("classeF", "Ma premiere fenetre winAPI !", WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, 400, 130,
NULL, LoadMenu(instance, "ID_MENU"), cetteInstance, NULL);
if (!fenetrePrincipale) return FALSE;
ShowWindow(fenetrePrincipale, modeDAffichage);
UpdateWindow(fenetrePrincipale);
while (GetMessage(&message, NULL, 0, 0))
{
TranslateMessage(&message);
DispatchMessage(&message);
}
return message.wParam;
}
LRESULT CALLBACK procedureFenetrePrincipale(HWND fenetrePrincipale, UINT message, WPARAM wParam, LPARAM lParam)
{
static HWND boutons[2] = {NULL};
switch (message)
{
case WM_CREATE:
boutons[0] = CreateWindow("BUTTON", "Parler", WS_CHILD | WS_VISIBLE,
5, 5, 383, 30, fenetrePrincipale, (HMENU)ID_B_PARLER, instance, NULL);
boutons[1] = CreateWindow("BUTTON", "Quitter", WS_CHILD | WS_VISIBLE,
5, 45, 383, 30, fenetrePrincipale, (HMENU)ID_B_QUITTER, instance, NULL);
return 0;
case WM_COMMAND:
switch(LOWORD(wParam))
{
case ID_B_APROPOS:
DialogBox(instance, "APROPOS", fenetrePrincipale, (DLGPROC)aPropos_procedure);
break;
case ID_B_PARLER:
MessageBox(fenetrePrincipale, "Clic", "Bonjour.", MB_ICONINFORMATION);
break;
case ID_B_QUITTER:
SendMessage(fenetrePrincipale, WM_DESTROY, 0, 0);
break;
}
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(fenetrePrincipale, message, wParam, lParam);
}
}
BOOL APIENTRY aPropos_procedure(HWND boiteDeDialogue,UINT message,WPARAM wParam,LPARAM lParam)
{
switch (message)
{
case WM_INITDIALOG:
return TRUE;
case WM_COMMAND:
if (LOWORD(wParam) == IDCANCEL || LOWORD(wParam) == IDOK)
{
EndDialog(boiteDeDialogue,0);
return TRUE;
}
return 0;
default:
return FALSE;
}
}

Résultat : (pas d'icône chez moi, je n'en avais pas sous la main ;) )

et

Pour aller plus loin

  • Vous pouvez récupérer le handle d'un contrôle d'une boîte de dialogue (pour pouvoir lui envoyer des messages) avec GetDlgItem, prenant comme premier paramètre le handle de la boîte de dialogue parent du contrôle, et en deuxième son ID.
  • Vous pouvez changer dynamiquement le texte des XTEXT avec SetDlgItemText, (ou Int, rajoutant un quatrième paramètre étant un booléen si l'int est signé ou non) prenant les mêmes paramètres que GetDlgItem, mais avec en plus le texte à afficher.
  • A l'inverse, vous pouvez utiliser GetDlgItemText (ou Int, où le troisième paramètre est un pointeur d'int qui va récupérer les éventuelles erreurs, et un quatrième spécifiant si l'int est signé ou non. La valeur est alors retournée.) pour en récupérer la valeur. Le troisième paramètre est alors une variable qui va contenir la valeur, et un quatrième est ajouté pour spécifier la taille de la chaîne à récupérer (pour éviter les dépassements de tampon).

Vous avez maintenant acquis toutes les bases (de chez base :p ), et pourrez alors étendre vos connaissances avec le prochain chapitre, lequel portera sur les différents contrôles.

Rédacteur : Mg++


Les contrôles.htm

LES CONTRÔLES

Les boutons (tous types)

Ce contrôle est l'un des plus utiles, mais aussi le plus complet.
En effet, ce que l'on désigne par BUTTON est bien plus qu'un bouton, ce peut être :

Un "push button" :

Une "check box" (deux ou trois états) :

Un "radio button" :

Une "group box" :

Nous allons détailler tour à tour chaque utilisation.

Dans la suite de la description, j'emploierai les noms anglais ci-dessus.

  • La première utilisation (la plus classique) est sans contestation celle du bouton poussoir, qui s'enclenche quand vous cliquez dessus.
  • La seconde est tout aussi utile : c'est une case à cocher. Elle peut avoir 2 ou 3 états. Les deux états communs sont coché, et non coché. Le troisième est non assigné, c'est-à-dire que vous ne voulez pas faire de choix entre les deux.
  • La troisième permet de faire un choix entre plusieurs possibilités.
  • La quatrième permet de regrouper les contrôles dans un carré surmonté d'un nom.

Création

Pour créer un BUTTON, il faut appeler CreateWindow en spécifiant "BUTTON" comme classe, ou utiliser le mot-clé PUSHBUTTON en ressource. Néanmoins, cela ne suffit pas car, comme vous l'avez vu, il y a plusieurs possibilités. Ce qui va nous intéresser est donc l'attribut de style. En plus de spécifier les styles habituels (WM_CHILD, WM_VISIBLE), vous pouvez spécifier un ou plusieurs de ces styles :

  • BS_3STATE : check box à 3 états.
  • BS_AUTO3STATE : check box trois états, qui bascule automatiquement d'un état à l'autre.
  • BS_AUTOCHECKBOX : idem, mais en 2 états.
  • BS_AUTORADIOBUTTON : radio button qui bascule automatiquement d'un choix à l'autre.
  • BS_CHECKBOX : check box deux états.
  • BS_DEFPUSHBUTTON : push button par défaut de la fenêtre.
  • BS_GROUPBOX : group box.
  • BS_LEFTTEXT : affiche le texte à gauche du radio button ou de la check box.
  • BS_OWNERDRAW : vous permet de dessiner vous-même le contrôle.
  • BS_PUSHBUTTON : push button.
  • BS_RADIOBUTTON : radio button.
  • BS_USERBUTTON : obsolète.
  • BS_BITMAP : affiche une image.
  • BS_BOTTOM : affiche le texte en bas du bouton.
  • BS_CENTER : affiche le texte au milieu du bouton (horizontalement).
  • BS_ICON : affiche une icône.
  • BS_FLAT : style "plat" (pas d'effet de profondeur).
  • BS_LEFT : affiche le texte à gauche du bouton.
  • BS_MULTILINE : si le texte est trop grand, le contrôle l'affichera sur plusieurs lignes.
  • BS_NOTIFY : permet au contrôle d'envoyer des notifications de type BN_KILLFOCUS et BN_SETFOCUS.
  • BS_PUSHLIKE : fait apparaître et comporter le contrôle comme un bouton (que ce soit un check box ou radio button).
  • BS_RIGHT : affiche le texte à droite du bouton.
  • BS_RIGHTBUTTON : même chose que BS_LEFTTEXT.
  • BS_TEXT : affiche du texte.
  • BS_TOP : affiche le texte en haut du bouton.
  • BS_VCENTER : affiche le texte au milieu du bouton, et verticalement.

Vous avez sûrement remarqué qu'il existait le style automatique et non-automatique pour les check box et radio button. Ceux-ci déterminent si vous voulez que le contrôle change lui-même d'état quand on clique dessus, ou si vous voulez vous en charger vous-mêmes. On préférera le plus souvent le style automatique.

Comment déterminer les radio button qui fonctionnent ensemble ?

C'est très simple : à chaque fois que vous commencez un nouveau groupe de radio button fonctionnant ensemble, il vous faut ajouter le style WS_GROUP lors de la création avec CreateWindow (voir le code complet en fin de description).

Il est évident que vous ne devez pas combiner des styles contradictoires, comme le texte affiché à droite et à gauche, ou le style check box et push button en même temps...

Notifications

Je vais décrire ici les notifications envoyées par le contrôle, via le message WM_COMMAND (sauf mention contraire). Nous partirons du principe que vous savez comment interagir avec ce message, et je décrirai donc ici uniquement les codes de notifications.

Bon, pour ceux qui n'ont pas suivi (vous savez, au fond de la salle, près du radiateur) on rappelle tout de même que l'ID du contrôle à l'origine de la notification ainsi que ladite notification constituent respectivement le mot bas et le mot haut de WM_COMMAND (abusez des macros LOWORD() et HIWORD()...)

.

BN_CLICKED

Cette notification est envoyée quand l'utilisateur clique sur un bouton.

BN_DBLCLK ou BN_DOUBLECLICKED

Cette notification est envoyée quand l'utilisateur double-clique sur un bouton.

Les boutons de type BS_RADIOBUTTON et BS_OWNERDRAW envoient ce message automatiquement.
Les autres ne l'envoient que si le style BS_NOTIFY est spécifié dans leurs styles.

WM_CTLCOLORBTN

Ce message est envoyé à la fenêtre parent juste avant que le contrôle ne soit dessiné.
Il est utile principalement pour changer la couleur du texte, ou du fond du contrôle pour le dessin.

Les paramètres valent alors:

  • wParam : handle du DC sur lequel dessiner.
  • lParam : handle du bouton.
  • Valeur de retour : handle d'une brosse qui sera utilisée pour le dessin du fond.

Ce message est envoyé directement à la fonction de gestion des messages, et non pas via le message WM_COMMAND.
La brosse retournée ne sera pas automatiquement détruite par le système.

Messages

Ces messages peuvent être envoyés au contrôle avec la fonction :

SendMessage(hCtl,iCode,wParam,lParam)

Pour chaque message, je décrirai le rôle et la signification de wParam et lParam, ainsi que la valeur retournée.

BCM_GETIDEALSIZE

Ce message permet de récupérer la taille du bouton permettant d'afficher correctement le texte et l'image (si présente).

  • wParam : 0.
  • lParam : pointeur vers une structure de type SIZE qui recevra la taille désirée.
  • Valeur de retour : TRUE en cas de succès, et FALSE en cas d'échec.
BM_CLICK

Ce message permet de simuler un clic de souris sur le bouton.

  • wParam : 0.
  • lParam : 0.
  • Valeur de retour : aucune.
BM_GETCHECK

Ce message permet de récupérer l'état d'un check box ou d'un radio button.

  • wParam : 0.
  • lParam : 0.
  • Valeur de retour : BST_CHECKED, BST_INDETERMINATE ou BST_UNCHECKED (ou 0 en cas d'échec).
BM_GETIMAGE

Ce message permet de récupérer le handle de l'image, ou de l'icône associée au bouton.

  • wParam : IMAGE_BITMAP ou IMAGE_ICON.
  • lParam : 0.
  • Valeur de retour : le handle de l'image ou de l'icône (ou NULL en cas d'échec).
BM_GETSTATE

Ce message permet de récupérer l'état d'un bouton ou d'une check box.

  • wParam : 0.
  • lParam : 0.
  • Valeur de retour : c'est la combinaison d'une ou plusieurs de ces valeurs :
  • BST_CHECKED : le bouton est coché.
  • BST_FOCUS : le bouton a le focus clavier.
  • BST_INDETERMINATE : la check box est non assignée.
  • BST_PUSHED : le bouton est maintenu enfoncé.
  • BST_UNCHECKED : le bouton n'est pas coché.
BM_SETCHECK

Ce message permet de définir l'état d'une check box ou un d'un radio button.

  • wParam : BST_CHECKED, BST_INDETERMINATE ou BST_UNCHECKED
  • lParam : 0.
  • Valeur de retour: 0.
BM_SETIMAGE

Ce message permet de définir le handle de l'image, ou de l'icône associée au bouton.

  • wParam : IMAGE_BITMAP ou IMAGE_ICON.
  • lParam : le handle de l'image ou de l'icône.
  • Valeur de retour : le handle de l'image, ou de l'icône associée précédente (ou NULL si aucune).
BM_SETSTATE

Ce message permet de définir l'état de surbrillance d'un bouton. L'état de surbrillance est utilisé lorsque l'utilisateur est en train de cliquer sur le bouton.

  • wParam : TRUE pour mettre le bouton en surbrillance et FALSE pour ne pas le mettre en surbrillance.
  • lParam : 0.
  • Valeur de retour : 0.

L'état de surbrillance n'affecte pas l'état même d'un bouton, à savoir enfoncé ou pas (ou coché / non coché pour une check box et radio button). Il affecte uniquement le dessin du bouton.

Exemple

Ceci est le code complet d'un exemple utilisant les boutons.

#include <windows.h>
#include <stdio.h>
HINSTANCE instance;
#define ID_PUSHBUTTON_1 110
#define ID_PUSHBUTTON_2 111
#define ID_PUSHBUTTON_3 112
#define ID_CHECKBOX_1 113
#define ID_CHECKBOX_2 114
#define ID_CHECKBOX_3 115
#define ID_CHECKBOX_4 116
#define ID_RADIOBUTTON_11 117
#define ID_RADIOBUTTON_12 118
#define ID_RADIOBUTTON_13 119
#define ID_RADIOBUTTON_21 120
#define ID_RADIOBUTTON_22 121
#define ID_RADIOBUTTON_23 122
VOID RemplieFenetrePrincipale(HWND fenetrePrincipale)
{
// Premier groupe: le push button
HWND hGroup=CreateWindow(
"BUTTON",
"Le push button",
WS_CHILD|WS_VISIBLE|BS_GROUPBOX,
10,10,
120,150,
fenetrePrincipale,
NULL,
instance,
NULL);
{
HWND hControle;
// On le remplit avec un premier push button tout bête
hControle=CreateWindow(
"BUTTON",
"Button 1",
WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,
10+10,10+20,
100,20,
fenetrePrincipale,
(HMENU)ID_PUSHBUTTON_1,
instance,
NULL);
// un second avec quelques flags : plat et plusieurs lignes
hControle=CreateWindow(
"BUTTON",
"Button 2: texte long",
WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON|BS_FLAT|BS_MULTILINE,
10+10,10+50,
100,40,
fenetrePrincipale,
(HMENU)ID_PUSHBUTTON_2,
instance,
NULL);
// et un troisième un peu plus exotique, c'est aussi le bouton par défaut de la fenêtre
// on lui met aussi une image alignée à gauche
hControle=CreateWindow(
"BUTTON",
"",
WS_CHILD|WS_VISIBLE|BS_DEFPUSHBUTTON|BS_ICON|BS_LEFT,
10+10,10+100,
100,40,
fenetrePrincipale,
(HMENU)ID_PUSHBUTTON_3,
instance,
NULL);
HANDLE hIcon=LoadIcon(NULL,IDI_ERROR);
SendMessage(hControle,BM_SETIMAGE,IMAGE_ICON,(LPARAM)hIcon);
}
// Deuxième groupe: les check box
hGroup=CreateWindow(
"BUTTON",
"La check box",
WS_CHILD|WS_VISIBLE|BS_GROUPBOX,
130,10,
120,150,
fenetrePrincipale,
NULL,
instance,
NULL);
{
HWND hControle;
// une check box automatique deux états
hControle=CreateWindow(
"BUTTON",
"Check box 1",
WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX,
130+10,10+20,
100,20,
fenetrePrincipale,
(HMENU)ID_CHECKBOX_1,
instance,
NULL);
// le même mais plat, et avec le texte à gauche de la case à cocher
hControle=CreateWindow(
"BUTTON",
"Check box 2",
WS_CHILD|WS_VISIBLE|BS_AUTOCHECKBOX|BS_FLAT|BS_LEFTTEXT,
130+10,10+50,
100,20,
fenetrePrincipale,
(HMENU)ID_CHECKBOX_2,
instance,
NULL);
// une autre check box simple automatique mais trois états
hControle=CreateWindow(
"BUTTON",
"Check box 3",
WS_CHILD|WS_VISIBLE|BS_AUTO3STATE,
130+10,10+80,
100,20,
fenetrePrincipale,
(HMENU)ID_CHECKBOX_3,
instance,
NULL);
// le même mais non automatique :)
hControle=CreateWindow(
"BUTTON",
"Check box 4",
WS_CHILD|WS_VISIBLE|BS_3STATE,
130+10,10+110,
100,20,
fenetrePrincipale,
(HMENU)ID_CHECKBOX_4,
instance,
NULL);
}
// troisième groupe : les radio button
hGroup=CreateWindow(
"BUTTON",
"Le radio button",
WS_CHILD|WS_VISIBLE|BS_GROUPBOX,
10,160,
240,110,
fenetrePrincipale,
NULL,
instance,
NULL);
{
HWND hControle;
// trois radio button
hControle=CreateWindow(
"BUTTON",
"Choix 1.1",
WS_CHILD|WS_VISIBLE|BS_AUTORADIOBUTTON|WS_GROUP,
10+10,160+20,
100,20,
fenetrePrincipale,
(HMENU)ID_RADIOBUTTON_11,
instance,
NULL);
hControle=CreateWindow(
"BUTTON",
"Choix 1.2",
WS_CHILD|WS_VISIBLE|BS_AUTORADIOBUTTON,
10+10,160+50,
100,20,
fenetrePrincipale,
(HMENU)ID_RADIOBUTTON_12,
instance,
NULL);
hControle=CreateWindow(
"BUTTON",
"Choix 1.3",
WS_CHILD|WS_VISIBLE|BS_AUTORADIOBUTTON,
10+10,160+80,
100,20,
fenetrePrincipale,
(HMENU)ID_RADIOBUTTON_13,
instance,
NULL);
// trois autres, mais qui forment un autre groupe
hControle=CreateWindow(
"BUTTON",
"Choix 2.1",
WS_CHILD|WS_VISIBLE|BS_AUTORADIOBUTTON|WS_GROUP,
130+10,160+20,
100,20,
fenetrePrincipale,
(HMENU)ID_RADIOBUTTON_21,
instance,
NULL);
hControle=CreateWindow(
"BUTTON",
"Choix 2.2",
WS_CHILD|WS_VISIBLE|BS_AUTORADIOBUTTON,
130+10,160+50,
100,20,
fenetrePrincipale,
(HMENU)ID_RADIOBUTTON_22,
instance,
NULL);
hControle=CreateWindow(
"BUTTON",
"Choix 2.3",
WS_CHILD|WS_VISIBLE|BS_AUTORADIOBUTTON,
130+10,160+80,
100,20,
fenetrePrincipale,
(HMENU)ID_RADIOBUTTON_23,
instance,
NULL);
}
}
VOID AfficheActionCheckBox(int index,HWND hCtl,HWND fenetrePrincipale)
{
// test si la check box est cochée, non cochée ou inderterminée.
LRESULT lRes=SendMessage(hCtl,BM_GETCHECK,0,0);
CHAR lpMessage[128];
sprintf(lpMessage,"La check box n°%d est maintenant %s",index,
lRes==BST_CHECKED?"cochée":
lRes==BST_UNCHECKED?"décochée":"inderterminée");
MessageBox(fenetrePrincipale,lpMessage,"Vous avez modifié une check box",
MB_ICONINFORMATION|MB_OK);
}
VOID DemandeActionCheckBox4(HWND hCtl,HWND fenetrePrincipale)
{
// test si la check box est cochée, non cochée ou inderterminée.
LRESULT lRes=SendMessage(hCtl,BM_GETCHECK,0,0);
PCHAR lpProchainEtat;
UINT iProchainEtat;
UINT iChoix;
CHAR lpMessage[128];
if(lRes==BST_CHECKED)
{
lpProchainEtat="inderterminée";
iProchainEtat=BST_INDETERMINATE;
}
else if(lRes==BST_INDETERMINATE)
{
lpProchainEtat="décochée";
iProchainEtat=BST_UNCHECKED;
}
else
{
lpProchainEtat="cochée";
iProchainEtat=BST_CHECKED;
}
sprintf(lpMessage,"Voulez-vous passer à l'état %s ?",lpProchainEtat);
iChoix=MessageBox(fenetrePrincipale,lpMessage,"",MB_YESNO);
if(iChoix==IDYES)
SendMessage(hCtl,BM_SETCHECK,(WPARAM)iProchainEtat,0);
}
VOID NotificationControle(HWND fenetrePrincipale,UINT message, WPARAM wParam, LPARAM lParam)
{
UINT iId=LOWORD(wParam);
HWND hCtl=(HWND)lParam;
switch(iId)
{
case ID_PUSHBUTTON_1:
MessageBox(fenetrePrincipale,"Vous avez appuyé sur le premier bouton","",MB_OK);
break;
case ID_PUSHBUTTON_2:
MessageBox(fenetrePrincipale,"Vous avez appuyé sur le second bouton","",MB_OK);
break;
case ID_PUSHBUTTON_3:
MessageBox(fenetrePrincipale,"Vous avez appuyé sur le troisième bouton","",MB_OK);
break;
case ID_CHECKBOX_1:
case ID_CHECKBOX_2:
case ID_CHECKBOX_3:
AfficheActionCheckBox(iId-ID_CHECKBOX_1,hCtl,fenetrePrincipale);
break;
case ID_CHECKBOX_4:
DemandeActionCheckBox4(hCtl,fenetrePrincipale);
break;
}
}
LRESULT CALLBACK procedureFenetrePrincipale(HWND fenetrePrincipale, UINT message, WPARAM wParam, LPARAM lParam)
{
static HWND boutons[2] = {NULL};
switch (message)
{
case WM_CREATE:
RemplieFenetrePrincipale(fenetrePrincipale);
return 0;
case WM_COMMAND:
NotificationControle(fenetrePrincipale,message,wParam,lParam);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(fenetrePrincipale,message,wParam,lParam);
}
}
int WinMain (HINSTANCE cetteInstance, HINSTANCE precedenteInstance,
LPSTR lignesDeCommande, int modeDAffichage)
{
HWND fenetrePrincipale;
MSG message;
WNDCLASS classeFenetre;
instance = cetteInstance;
classeFenetre.style = 0;
classeFenetre.lpfnWndProc = procedureFenetrePrincipale;
classeFenetre.cbClsExtra = 0;
classeFenetre.cbWndExtra = 0;
classeFenetre.hInstance = NULL;
classeFenetre.hIcon = LoadIcon(NULL, IDI_APPLICATION);
classeFenetre.hCursor = LoadCursor(NULL, IDC_ARROW);
classeFenetre.hbrBackground = (HBRUSH)(1 + COLOR_BTNFACE);
classeFenetre.lpszMenuName = NULL;
classeFenetre.lpszClassName = "classeF";
// On prévoit quand même le cas où ça échoue
if(!RegisterClass(&classeFenetre))
return FALSE;
fenetrePrincipale=CreateWindow(
"classeF",
"Ma premiere fenetre winAPI !",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,CW_USEDEFAULT,
270,320,
NULL,
NULL,
cetteInstance,
NULL);
if (!fenetrePrincipale)
return FALSE;
ShowWindow(fenetrePrincipale,modeDAffichage);
UpdateWindow(fenetrePrincipale);
while(GetMessage(&message,NULL,0,0))
{
TranslateMessage(&message);
DispatchMessage(&message);
}
return message.wParam;
}

Rédacteur : pamaury

Le contrôle d'édition

Définition

Le contrôle d'édition est un contrôle rectangulaire utilisé dans les boîtes de dialogue pour permettre à l'utilisateur d'entrer et d'éditer du texte au clavier. On peut également l'utiliser dans une fenêtre standard.

Création

Pour créer un Contrôle d'édition, il faut appeler CreateWindow en spécifiant "EDIT" comme classe. Dans un fichier ressource, on écrira par exemple :

CONTROL "", IDC_NOMDUCONTROLE, <couleur nom="bleu">"EDIT"</couleur>, WS_CHILD | WS_VISIBLE, x, y, largeur, hauteur

Vous pouvez aussi utiliser le mot clé EDITTEXT.

Néanmoins, cela ne suffit pas car comme vous vous en doutez, nous avons plusieurs possibilités pour créer notre contrôle. Ce qui va nous intéresser est donc l'attribut de style . En plus de spécifier les styles habituels (WM_CHILD,WM_VISIBLE), vous pouvez définir un ou plusieurs de ces styles spécifiques qui commencent tous par "ES_" :

  • ES_AUTOHSCROLL : défilement automatique du texte de 10 caractères vers la droite quand l'utilisateur tape un caractère à la fin de la ligne. Quand l'utilisateur presse sur la touche "Entrée", le contrôle fait revenir tout le texte à la position d'origine.
  • ES_AUTOVSCROLL : fait défiler le texte automatiquement d'une page vers le haut quand l'utilisateur presse sur la touche "Entrée" à la dernière ligne.
  • ES_CENTER : centre le texte.
  • ES_LEFT : aligne le texte à gauche.
  • ES_LOWERCASE : convertit en minuscules tous les caractères tapés dans le contrôle.
  • ES_MULTILINE : par défaut, un contrôle edit n'est constitué que d'une seule ligne. Ce style affiche un contrôle multiligne.
  • ES_NOHIDESEL : quand le contrôle perd le focus ; par défaut, la sélection de texte est cachée, et lorsqu'il a le focus, l'affichage du texte sélectionné est inversé. Avec ce style, le texte sélectionné est inversé, que le contrôle ait le focus ou non.
  • ES_NUMBER : ne permet que les chiffres.
  • ES_OEMCONVERT : convertit le texte entré dans le contrôle, de sorte que le texte tapé est mappé du code ANSI vers le code OEM, et inversement.
  • ES_PASSWORD : affiche un astérisque * pour chaque caractère entré dans le contrôle Edit. Ce style n'est valide que pour les contrôles d'une seule ligne.
  • ES_READONLY : empêche l'utilisateur de taper ou d'éditer du texte dans la commande d'édition.
  • ES_RIGHT : aligne le texte à droite.
  • ES_UPPERCASE : convertit en majuscules tous les caractères tapés dans le contrôle.
  • ES_WANTRETURN : indique qu'un retour de chariot est inséré quand l'utilisateur presse sur la touche "Entrée", si le texte est écrit dans un contrôle Edit multiligne dans une boîte de dialogue. Si ce style n'est pas spécifié, presser sur le touche "Entrée" aura le même effet que de presser sur le bouton par défaut de la boîte de dialogue. Ce style n'a pas d'effet sur un contrôle Edit d'une ligne.

Il est évident que vous ne devez pas combiner des styles contradictoires, comme le texte affiché à droite et à gauche, ou le style texte en minuscules et texte en majuscules...

Nous avons créé le contrôle Edit, nous allons maintenant étudier les façons de l'utiliser. Ainsi, dans un premier temps, nous traiterons des notifications envoyées par le contrôle à la fenêtre parent, puis nous verrons les messages envoyés par la fenêtre parent au contrôle.

Les notifications

L'utilisateur envoie des requêtes d'édition en utilisant le clavier ou la souris. Le système envoie chaque requête à la fenêtre parent du contrôle dans le message WM_COMMAND.
J'ai considéré que vous savez comment interagir avec ce message, et je décrirai donc ici uniquement les codes de notification.

EN_ALIGN_LTR_EC

Cette notification est envoyée quand l'utilisateur change de direction dans le contrôle d'édition de gauche vers la droite.

EN_ALIGN_RTL_EC

Cette notification est envoyée quand l'utilisateur change de direction dans le contrôle d'édition de droite vers la gauche.

EN_CHANGE

L'utilisateur a modifié le texte du contrôle. Le message est envoyé après que le texte soit affiché (différent de EN-UPDATE).

Si l'on traite cette notification on dira : "s'il y a un changement dans le contrôle, faire ceci..."

EN_HSCROLL

L'utilisateur a cliqué sur la barre horizontale de défilement du contrôle d'édition.

Le système envoie ce message avant de mettre à jour l'écran.

EN_MAXTEXT

Quand l'utilisateur insère du texte, et que le nombre de caractères entrés est supérieur à ce qui est possible pour ce contrôle, l'insertion est tronquée.

Ce message est envoyé quand le contrôle d'édition n'a pas le style ES_AUTOHSCROLL, et que le nombre de caractères insérés excède la largeur du contrôle ; ou quand le contrôle d'édition n'a pas le style ES_AUTOHSCROLL, et que le nombre de lignes de texte entrées dépassent la hauteur du contrôle.

EN_UPDATE

L'utilisateur a modifié le texte dans le contrôle d'édition, et le système va afficher le nouveau texte.

Le système envoie cette notification après avoir formaté le texte, mais avant de l'afficher. Ainsi, l'application peut redimensionner le contrôle.

EN_VSCROLL

L'utilisateur a cliqué sur la barre verticale de défilement, ou a utilisé la roulette de la souris au-dessus du contrôle d'édition.

Le système envoie le message avant la remise à jour de la page.

WM_CTLCOLOREDIT

Ce message est envoyé par le système à la fenêtre parent avant que le contrôle ne soit dessiné. Ce message contient le handle du contexte d'affichage (DC) dans wparam, et le handle de la fenêtre fille dans lparam. La fenêtre parent peut utiliser ces handle pour changer les couleurs du texte et du fond du contrôle d'édition.

- Ce message est envoyé directement à la fonction de gestion des messages, et non pas via le message WM_COMMAND.
- La brosse retournée ne sera pas automatiquement détruite par le système.

Les messages

Ces messages peuvent être envoyés au contrôle avec la fonction :

SendMessage(hCtl,iCode,wParam,lParam)

Pour chaque message, je décrirai le rôle et la signification de wParam et lParam et de la valeur retournée.

EM_GETCUEBANNER

Recherche une sélection textuelle dans le texte affiché.

  • wParam : pointeur sur une chaîne de caractères unicode qui contient la sélection textuelle.
  • lParam : taille du buffer qui contient cette sélection.
  • Valeur retournée : TRUE si la sélection a été trouvée, FALSE en cas d'échec.
EM_GETFIRSTVISIBLELINE

Ce message recherche l'index de la ligne visible la plus haute dans un contrôle d'édition multiligne.

  • wParam : 0.
  • lParam : 0.
  • Valeur retournée : index de la ligne.

Pour un contrôle d'édition d'une seule ligne, cet index sera celui du premier caractère visible de la ligne.

EM_GETHANDLE

Ce message renvoie le handle de la mémoire courante allouée au texte d'un contrôle d'édition multiligne.

  • wParam: 0.
  • lParam : 0.
  • Valeur retournée : handle du buffer qui contient le texte du contrôle d'édition. Si une erreur survient, comme par exemple l'envoi du texte à un contrôle d'une seule ligne, cette valeur sera 0.

Si la fonction SendMessage réussit, l'application peut accéder au contenu du contrôle d'édition, en donnant la structure HLOCAL à la valeur retournée avant de la passer à la fonction LocalLock. Pour déverrouiller le buffer, et ainsi pouvoir modifier son contenu, l'application doit au préalable utiliser la fonction LocalUnlock.

EM_GETLIMITTEXT

Recherche les limites du texte courant.

  • wParam : 0.
  • lParam : 0.
  • Valeur retournée : limite du texte.

La limite du texte est la quantité maximum de texte, en TCHAR, que le contrôle peut contenir. Pour un texte en ANSI, c'est le nombre de bytes ; pour un texte en Unicode, ce sera le nombre de caractères. Deux documents avec la même limite de caractères rapporteront la même limite de texte, même si l'un est en norme ANSI, et l'autre en Unicode.

EM_GETLINE

Ce message copie une ligne de texte depuis un contrôle d'édition, et le place dans un buffer défini.

  • wParam : indique l'index de la ligne à rechercher dans un contrôle d'édition multiligne. Si ce paramètre est 0, la ligne recherchée sera la ligne la plus haute dans le texte. Si le contrôle ne contient qu'une seule ligne, ce paramètre sera ignoré.
  • lParam : pointeur sur le buffer qui va recevoir la copie de la ligne. Avant d'envoyer le message, définissez le premier mot de ce buffer à sa taille en TCHAR. Pour un texte ANSI, c'est le nombre de bytes ; pour un texte Unicode c'est le nombre de caractères. Cette taille dans le premier mot sera remplacée par la copie de la première ligne.
  • Valeur retournée : nombre de TCHAR copiés. La valeur retournée sera 0 si le nombre de lignes spécifié dans le paramètre wParam est plus grand que le nombre de lignes contenu dans le contrôle d'édition.

La copie de la ligne ne contient pas le caractère nul final \0.

EM_GETLINECOUNT

Ce message recherche le nombre de lignes dans un contrôle d'édition multiligne.

  • wParam : 0.
  • lParam : 0.
  • Valeur retournée : integer, qui définit le nombre total de lignes de texte contenu dans un contrôle d'édition multiligne. Si le contrôle ne contient pas de texte, la valeur retournée sera 1. Cette valeur ne sera jamais inférieure à 1.

Ce message recherche le nombre total de lignes de texte, et pas seulement le nombre de lignes de texte visible. Si le dispositif de retour à la ligne automatique est désactivé, le nombre de lignes peut changer quand les dimensions de la fenêtre d'édition changent.

EM_GETMODIFY

Ce message recherche l'état du flag de modification du contrôle d'édition. Le flag indique si le contenu du contrôle a été modifié.

  • wParam : 0.
  • lParam : 0.
  • Valeur retournée : non nulle s'il y a une modification, 0 s'il n'y a pas de modification.

On peut envoyer le message EM_SETMODIFY au contrôle d'édition pour appliquer ou enlever le flag.

EM_GETPASSWORDCHAR

Ce message recherche le caractère d'un mot de passe que l'utilisateur entre dans le contrôle d'édition.

  • wParam : 0.
  • lParam : 0.
  • Valeur retournée : définit le caractère qui doit être affiché à la place des caractères entrés par l'utilisateur. Si cette valeur est NULL, il n'y a pas de caractères de mot de passe, et le contrôle affiche les caractères entrés par l'utilisateur.

Si un contrôle d'édition est créé avec le style ES_PASSWORD, le caractère par défaut du mot de passe sera un astérisque (*). Si un contrôle d'édition est créé sans le style ES_PASSWORD, il n'y aura pas de caractères de mot de passe ; pour changer les caractères du mot de passe, envoyez le message EM_SETPASSWORDCHAR.

EM_GETRECT

Ce message recherche le rectangle de formatage d'un contrôle d'édition. Le rectangle de formatage est le rectangle dans lequel le contrôle affiche le texte. Ce rectangle est indépendant de la taille de la fenêtre du contrôle d'édition.

  • wParam : 0.
  • lParam : pointeur sur une structure RECT qui reçoit le rectangle de formatage.
  • Valeur retournée : cette valeur n'a pas de grande signification.

Vous pouvez modifier le rectangle de formatage d'un contrôle d'édition multiligne en utilisant les messages EM_SETRECT et EM_SETRECTNP.
Sous certaines conditions, EM-GETRECT ne va pas retourner exactement les valeurs définies par EM_SETRECT ou EM_SETRECTNP, mais elles seront approximativement correctes avec une variation de quelques pixels.

EM_GETSEL

Message qui recherche les positions des caractères de début et de fin d'une sélection dans le contrôle d'édition.

  • wParam : pointeur sur un buffer qui reçoit la position de départ de la sélection. Ce paramètre peut être NULL.
  • lParam : pointeur sur un buffer qui reçoit la position de premier caractère non sélectionné après la fin de la sélection. Ce paramètre peut être NULL.
  • Valeur retournée : valeur contenant la position de départ de la sélection dans le mot bas, et la position du premier caractère après le dernier sélectionné dans le mot haut. Si l'une de ces valeurs excède 65,535, la valeur retournée sera 1.
EM_GETWORDBREAKPROC

Ce message recherche l'adresse de la fonction courante de retour à la ligne.

  • wParam : 0.
  • lParam : 0.
  • Valeur retournée : définit l'adresse de la fonction Wordwrap (retour à la ligne) de l'application. Cette valeur est NULL si aucune fonction Wordwrap n'existe.

Une fonction Wordwrap balaie le texte du buffer contenant le texte envoyé pour être affiché. Elle cherche le premier mot qui n'apparaît pas sur la ligne d'affichage. La fonction Wordwrap place ce mot au début de la ligne suivante. Une fonction Wordwrap définit le point où le système doit casser la ligne du texte dans un contrôle d'édition multiligne, normalement au niveau d'un caractère d'espacement entre deux mots.

EM_HIDEBALLOONTIP

Cache toute info bulle associée au contrôle d'édition.

  • wParam : 0.
  • lParam : 0.
  • Valeur retournée : si le message réussit, cette valeur sera TRUE, sinon, elle sera FALSE.
EM_LINEFROMCHAR

Ce message recherche l'index de la ligne contenant l'index d'un caractère défini, dans un contrôle d'édition. L'index d'un caractère appartient à une suite dont le premier terme est 0.

  • wParam : définit l'index du caractère contenu dans la ligne dont le numéro est recherché. Si ce paramètre est 1, EM_LINEFROMCHAR recherche soit le numéro de la ligne courante (la ligne où se trouve le curseur), soit, si une sélection existe, le numéro de la ligne où se situe le début de la sélection de texte.
  • lparam : 0.
  • Valeur retournée : numéro de la ligne contenant l'index du caractère spécifié dans wParam. Ce numéro appartient à une série qui commence à 0.
EM_LINEINDEX

Ce message définit la limite de texte d'un contrôle d'édition. Cette limite est la quantité maximum de texte, en TCHAR, que l'utilisateur peut entrer dans le contrôle d'édition.

  • wParam : spécifie le nombre maximum de TCHAR que l'utilisateur peut entrer. Pour le texte ANSI, c'est le nombre de bytes ; pour le texte Unicode, c'est le nombre de caractères. Ce nombre ne doit pas inclure le caractère nul terminal.
  • lParam : 0
  • Valeur retournée : pas de valeur retournée.

Ce message limite seulement le texte que l'utilisateur peut entrer. Il ne concerne pas le texte qui est déjà dans le contrôle quand le message est envoyé, ni la longueur du texte copié dans le contrôle d'édition par le message WM_SETTEXT. Si une application utilise le message WM_SETTEXT pour placer plus de texte que le message EM_LIMITTEXT a établi dans un contrôle d'édition, l'utilisateur pourra éditer entièrement le contenu du contrôle d'édition.

Avant que EM_LIMITTEXT soit appelé, la limite par défaut de la quantité de texte que l'utilisateur peut entrer dans un contrôle d'édition est de 32,767 caractères.

EM_LINELENGTH

Ce message recherche la longueur, en caractères, d'une ligne dans un contrôle d'édition.

  • wParam : définit l'index du caractère dans une ligne dont la longueur est recherchée. Si ce paramètre est plus grand que le nombre de caractères dans le contrôle, la valeur retournée sera 0. Ce paramètre peut être 1. Dans ce cas, le message retourne le nombre de caractères non sélectionnés dans la ligne des caractères sélectionnés. Par exemple, si une sélection va du 4ème caractère d'une ligne au 8ème caractère avant la fin de la ligne qui suit, la valeur retournée sera 10 (3 caractères sur la première ligne, et 7 sur la ligne suivante).
  • lParam : 0.
  • Valeur retournée : pour des contrôles d'édition multiligne, la valeur retournée est la longueur, en TCHAR, de la ligne définie par le paramètre wParam. Pour le texte ANSI, c'est le nombre de bytes ; pour le texte Unicode, c'est le nombre de caractères. Cette valeur n'inclut pas le caractère de retour de chariot de fin de ligne.
    Pour un contrôle d'une seule ligne, la valeur retournée est la longueur, en TCHAR, du texte dans le contrôle d'édition.

Utilisez le message EL_LINEINDEX pour rechercher l'index d'un caractère pour un numéro de ligne donné à l'intérieur d'un contrôle d'édition multiligne.

EM_LINESCROLL

Fait défiler le texte dans un contrôle d'édition multiligne.

  • wParam : définit le nombre de caractères à faire défiler horizontalement.
  • lParam : définit le nombre de lignes à faire défiler verticalement.
  • Valeur retournée : si le message est envoyé à un contrôle d'édition multiligne, la valeur est TRUE. Si le message est envoyé à un contrôle d'édition d'une ligne la valeur est FALSE.
EM_POSFROMCHAR

Ce message recherche les coordonnées dans la zone client d'un caractère dans le contrôle d'édition.

  • wParam : index du caractère (les index commencent par 0).
  • lParam : 0.
  • Valeur retournée : contient les coordonnées du caractère dans la zone client. Le mot bas contient la coordonnée horizontale, et le mot haut contient la coordonnée verticale.

Une coordonnée retournée peut être négative si le caractère défini n'est pas affiché dans l'aire client du contrôle d'édition. Si le caractère est un délimiteur de ligne, les coordonnées retournées seront juste après le dernier caractère visible de la ligne. Si l'index spécifié est plus grand que l'index du dernier caractère dans le contrôle, le contrôle retournera -1.

EM_REPLACESEL

Ce message remplace la sélection courante dans le contrôle d'édition avec le texte spécifié.

  • wParam : spécifié seulement si l'opération peut être annulée. Si le paramètre est TRUE, l'opération peut être annulée. Si le paramètre est FALSE, l'opération ne peut pas être annulée.
  • lParam : pointeur sur une chaîne à terminaison nulle contenant le texte de remplacement.
  • Valeur retournée : ne retourne pas de valeur.

Pour remplacer tout le texte d'un contrôle d'édition, utilisez le message WM_SETTEXT.
S'il n'y a pas de sélection courante de texte, le texte de remplacement est inséré à l'endroit où est placé le curseur.

EM_SCROLL

Ce message fait défiler le texte verticalement dans un contrôle d'édition. Ce message est équivalent au message WM_VSCROLL.

  • wParam : peut être une des valeurs suivantes :
    *** SB_LINEDOWN : déplace les lignes vers le bas
    *** SB_LINEUP : déplace les lignes vers le haut.
    *** SB_PAGEDOWN : passe à la page suivante.
    *** SB_PAGEUP : passe à la page précédente.
  • lParam : 0.
  • Valeur retournée : si le message réussit, le mot haut retourne la valeur TRUE, et le mot bas est le nombre de lignes de défilement. Si le wParam spécifie une valeur invalide, cette valeur sera FALSE.
EM_SCROLLCARET

Ce message fait avancer le curseur dans le contrôle d'édition.

  • wParam : ce paramètre est réservé. Il peut être défini à 0.
  • lParam : ce paramètre est réservé. Il peut être défini à 0.
  • Valeur retournée : sans grande signification.
EM_SETCUEBANNER

Le texte du contrôle est affiché comme information, et va s'en aller dès que l'utilisateur commencera à utiliser le contrôle.

  • wParam : 0
  • lParam : pointeur sur une chaîne de caractères Unicode, qui contient le texte à afficher en "information".
  • Valeur retournée : si le message réussit, cette valeur sera TRUE ; dans le cas contraire, FALSE.
EM_SETHANDLE

Message qui définit le handle de la mémoire qui va être utilisée par un contrôle d'édition.

  • wParam : handle de la mémoire du buffer que le contrôle d'édition utilise pour placer le texte courant affiché, au lieu d'utiliser sa propre mémoire.
  • lParam : 0
  • Valeur retournée : pas de valeur retournée.

Avant qu'une application ne définisse un nouveau handle de mémoire, elle doit envoyer un message EM_GETHANDLE pour rechercher le handle de la mémoire courante du buffer, et doit libérer cette mémoire.

EM_SETLIMITTEXT

Ce message définit la limite du texte d'un contrôle d'édition. La limite du texte est la quantité maximum de texte, en TCHAR, que l'utilisateur peut entrer dans le contrôle d'édition.
C'est le même message que EM_LIMITTEXT.

  • wParam : définit le nombre maximum de TCHAR que l'utilisateur peut entrer. Pour un texte ANSI, c'est le nombre de bytes ; pour un texte Unicode, c'est le nombre de caractères. Ce nombre ne doit pas inclure le caractère nul de fin.
  • lParam : 0.
  • Valeur retournée : pas de valeur retournée.

Ce message limite seulement le texte que l'utilisateur peut entrer. Il n'affecte pas le texte qui est déjà dans le contrôle d'édition quand le message est envoyé. Il n'affecte pas non plus la longueur du texte copié dans le contrôle d'édition à l'aide du message WM_SETTEXT. Si une application utilise le message WM_SETTEXT pour placer plus de texte que ne le définit EM_SETLIMITTEXT à l'intérieur du contrôle, l'utilisateur pourra éditer la totalité du contenu du contrôle d'édition.
Avant que EM_SETLIMITTEXT soit appelé, la limite par défaut de la quantité de texte qu'un utilisateur peut entrer dans un contrôle d'édition est 32,767 caractères.

EM_SETMODIFY

Ce message applique ou annule le flag de modification pour un contrôle d'édition. Le flag de modification indique si le texte à l'intérieur d'un contrôle d'édition a été modifié.

  • wParam : donne la nouvelle valeur pour le flag de modification . Une valeur TRUE indique que le texte a été modifié, une valeur FALSE indique qu'il n'y a pas eu de modification.
  • lParam : 0
  • Valeur retournée : pas de valeur retournée.

Le système met immédiatement le flag de modification à zéro quand le contrôle est créé. Si un utilisateur change le texte du contrôle, le système définit à "nonzéro" le flag. Vous pouvez envoyer le message EM_GETMODIFY pour trouver le stade du flag de modification du contrôle d'édition.

EM_SETPASSWORDCHAR

Ce message définit ou annule le caractère de mot de passe pour un contrôle d'édition. Quand le caractère de mot de passe est défini, ce caractère est affiché à la place des caractères entrés par l'utilisateur.

  • wParam : définit le caractère à afficher à la place des caractères entrés par l'utilisateur. Si ce paramètre est zéro, le contrôle annule le caractère courant de mot de passe, et affiche les caractères entrés au clavier par l'utilisateur.
  • lParam : 0.
  • Valeur retournée : pas de valeur retournée.

Quand un contrôle d' édition reçoit le message EM_SETPASSWORDCHAR, le contrôle redessine tous les caractères visibles en utilisant le caractère spécifié dans wParam. Si wParam est zéro, le contrôle redessine tous les caractères visibles en utilisant les caractères qui ont été entrés par l'utilisateur.
Si un contrôle d'édition a été créé avec le style ES_PASSWORD, le caractère de mot de passe par défaut est l'astérisque(*).

EM_SETREADONLY

Ce message définit ou annule le style ES_READONLY d'un contrôle d'édition.

  • wParam : TRUE si le style ES_READONLY est défini, FALSE sinon.
  • lParam : 0.
  • Valeur retournée : "non zéro" si la fonction réussit. Zéro si la fonction échoue.
EM_SETRECT

Ce message définit le rectangle de formatage d'un contrôle d'édition multiligne. Le rectangle de formatage est le rectangle dans lequel le contrôle dessine le texte. Il est indépendant de la taille de la fenêtre du contrôle d'édition.

  • wParam : 0.
  • lParam : pointeur sur une structure RECT qui définit les nouvelles dimensions du rectangle. Si le paramètre est NULL, le rectangle de formatage est défini aux valeurs par défaut.
  • Valeur retournée : pas de valeur retournée.

Si le contrôle d'édition n'a pas de barre horizontale de défilement, et si le rectangle de formatage est plus large que la fenêtre du contrôle d'édition, les lignes de textes qui seront plus larges que la fenêtre du contrôle seront coupées au lieu d'être terminées sur la ligne suivante.

Si un contrôle d'édition comporte un bord, le rectangle de formatage sera réduit par la taille du bord. Si vous voulez ajuster le rectangle renvoyé par EM_GETRECT, vous devez annuler la taille du bord avant d'utiliser le message EM_SETRECT.

EM_SETRECTNP

Ce message définit le rectangle de formatage d'un contrôle d'édition. Ce message est le même que le message EM_SETRECT à ceci près qu'il ne redessine pas la fenêtre du contrôle d'édition.

  • wParam : 0.
  • lParam : pointeur sur une structure RECT qui définit les nouvelles dimensions du rectangle. Si le paramètre est NULL, le rectangle de formatage est défini aux valeurs par défaut.
  • Valeur retournée : pas de valeur retournée.
EM_SETSEL

Ce message sélectionne une suite de caractères dans un contrôle d'édition.

  • wParam : spécifie la position du caractère situé au début de la sélection.
  • lParam : spécifie la position du caractère de fin de la sélection.
  • Valeur retournée : pas de valeur retournée.

La valeur de départ peut être plus grande que la la valeur de fin. La plus petite valeur définira la position du premier caractère dans la sélection. Inversement, la plus grande valeur définira la position du caractère de fin de la sélection.

Si le départ est 0 et la fin 1, tout le texte dans le contrôle d'édition sera sélectionné.
Si le départ est 1, la sélection sera annulée.

EM_SHOWBALLOONTIP

Ce message affiche une info-bulle associée à un contrôle d'édition.

  • wParam : 0.
  • lParam : pointeur sur une structure EDITBALLOONTIP contenant l'information concernant l'info-bulle à afficher.
  • Valeur retournée : si le message réussit, la valeur retournée sera TRUE ; sinon, FALSE.
EM_UNDO

Ce message annule la dernière opération du contrôle d'édition dans la file des annulations du contrôle.

  • wParam : 0.
  • lParam : 0.
  • Valeur retournée : pour un contrôle d'une seule ligne, cette valeur est toujours TRUE. Pour un contrôle multiligne, cette valeur est TRUE si l'annulation a réussi, ou FALSE dans le cas contraire.

Une annulation peut également être annulée. Par exemple, vous pouvez restaurer du texte effacé avec le message EM_UNDO, et annuler une nouvelle fois le texte avec ce message aussi longtemps qu'aucune autre opération ne se placera dans la file.

Exemple

#include <windows.h>
#include <stdio.h>
#define ID_BOUTON1 110
#define ID_BOUTON2 111
#define ID_BOUTON3 112
//variables globales
HINSTANCE inst;
HWND hEdit[2]; //handle des deux contrôles d'édition
//Afficher un contrôle d'édition d'une ligne
HWND afficheEditUneLigne (HWND hwnd)
{
HWND hEdit=CreateWindow(
"EDIT",
"Modifiez le texte SVP",
WS_VISIBLE|WS_CHILD|WS_BORDER|ES_CENTER ,
50,10,500,20,hwnd,NULL,inst,NULL);
return hEdit;
}
//Afficher un contrôle d'édition multiligne
HWND afficheEditMultiligne (HWND hwnd)
{
char texte[2000]={0};
strncat (texte, "Vous voudriez apprendre l'API windows et vous trouvez les autres ",1000);
strncat (texte, "cours présents sur le net trop difficiles, ou pas assez précis ?",1000);
strncat (texte, "Vous avez frappé à la bonne porte. Bienvenue dans ce tutorial.",1000);
strncat (texte, "Vous allez apprendre ici à vous servir d'une API très développée :",1000);
strncat (texte, "l'API Win32. Sa proximité avec le système d'exploitation lui permet ",1000);
strncat (texte, "d'avoir un contrôle total sur n'importe quelle partie de l'OS et un ",1000);
strncat (texte, "grand éventail de fonctions. L'API Windows est, malheureusement et comme ",1000);
strncat (texte, "son nom l'indique, exclusivement dédié à Windows. Donc si vous ",1000);
strncat (texte, "possédez un autre OS, passez votre chemin. Je considère dans ce tutorial que ",1000);
strncat (texte, "vous ne connaissez strictement rien à l'API Windows, ceci pour ne pas ",1000);
strncat (texte, "décourager les débutants, néammoins, vous aurez besoin des connaissances ",1000);
strncat (texte, "acquises tout au long du tuto de M@teo. Vous trouverez donc ici des ",1000);
strncat (texte, "cours évolutifs, une documentation sur les différents messages, ",1000);
strncat (texte, "notifications, styles, fonctions etc., des projets grands, ",1000);
strncat (texte, "moyens ou petits ainsi que des bibliothèques statiques ",1000);
strncat (texte, "ou dynamiques, et enfin des annexes. ",1000);
HWND hEdit=CreateWindow("EDIT",
texte,
WS_VISIBLE|WS_CHILD|ES_MULTILINE|ES_AUTOVSCROLL,
50,50,500,300,hwnd,NULL,inst,NULL);
return hEdit;
}
//Traitement des messages
void messageCtl(HWND hwnd,UINT message, WPARAM wParam, LPARAM lParam)
{
UINT motBas = LOWORD(wParam);
HWND hCtl= (HWND) lParam;
int nombreLignes=0;
char lignes[70]={0},nLignes[5]={0};
switch(motBas)
{
case ID_BOUTON1://nombre de lignes
//envoyer le message approprié pour trouver le nombre de lignes dans le contôle
nombreLignes = SendMessage( hEdit[1], EM_GETLINECOUNT,wParam,lParam);
//transformer un integer en chaîne de caractères et afficher le résultat
sprintf(nLignes,"%d",nombreLignes);
strncat(lignes,"Il y a ",70);
strncat(lignes,nLignes,70);
strncat(lignes, " lignes dans ce texte. Supprimez ou ajoutez \n en et testez le message.",70);
MessageBox(hwnd,lignes,"",MB_OK);
break;
case ID_BOUTON2: //marges de gauche
wParam = EC_LEFTMARGIN ;
LOWORD(lParam) = 100;
//ou
//lParam = (LPARAM)MAKELONG (100,0);
//envoi du message au contrôle d'édition
SendMessage( hEdit[1], EM_SETMARGINS,wParam,lParam);
MessageBox(hwnd,"A vous de trouver comment réduire \nles lignes maintenant ! :)","",MB_OK);
break;
}
}
//Traitement des notifications
void NotificationControle(HWND hwnd,UINT message, WPARAM wParam, LPARAM lParam)
{
UINT motHaut= HIWORD(wParam);
HWND hCtl= (HWND) lParam;
switch(motHaut)
{
//Notification EN_CHANGE envoyée par le contrôle
case EN_CHANGE:
if (hCtl == hEdit[0])
{
MessageBox(hwnd,"Vous avez modifié le texte d'une contrôle à une ligne !!","",MB_OK);
}
break;
case BN_CLICKED: // cliquer sur un des boutons pour analyser les messages
messageCtl((HWND)hwnd,(UINT)message,(WPARAM)wParam,(LPARAM)lParam);
break;
}
}
//Boutons pour la démo
HWND boutonMessage(HWND hwnd,HMENU code,long x, long y, char * texte)
{
HWND hBouton=CreateWindow(
"BUTTON",
texte,
WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,
x,y,
350,30,
hwnd,
code,
inst,
NULL);
return hBouton;
}
LRESULT CALLBACK Procedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
static HWND hBouton[3]={0};
switch (message)
{
//afficher les contrôles d'édition à la réception du message WM_CREATE
case WM_CREATE:
hEdit[0]=afficheEditUneLigne (hwnd);
hEdit[1]=afficheEditMultiligne(hwnd);
//affichage des boutons pour la démo:
hBouton[0]= boutonMessage(hwnd, (HMENU)ID_BOUTON1,120,355,"Tester le message EM_GETLINECOUNT");
hBouton[1]= boutonMessage(hwnd, (HMENU)ID_BOUTON2,120,395,"Test le EM_SETMARGINS (Gauche)");
hBouton[2]= boutonMessage(hwnd, (HMENU)ID_BOUTON3,120,435,"Test le EM_SETMARGINS (Droite)");
return 0;
case WM_COMMAND:
//Recevoir une notification
NotificationControle(hwnd,message,wParam,lParam);
return 0;
case WM_CLOSE:
DestroyWindow(hwnd);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(hwnd, message, wParam, lParam);
}
}
int WINAPI WinMain(HINSTANCE cetteInstance, HINSTANCE precedenteInstance,
LPSTR lignesDeCommande, int modeDAffichage)
{
//Variables de la fonction principale
MSG msg;
WNDCLASS wc;
HWND hwnd;
inst = cetteInstance;
// Structure de la classe de la fenêtre principale
wc.style = 0 ;
wc.lpfnWndProc = Procedure;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = cetteInstance;
wc.hIcon = NULL;
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hbrBackground = (HBRUSH)(1+ COLOR_BTNFACE);
wc.lpszMenuName = NULL;
wc.lpszClassName = "ClassePrincipale";
//Enregistrer la classe de fenêtre
if(!RegisterClass(&wc)) return FALSE;
hwnd = CreateWindow("ClassePrincipale", "Démo du contrôle d'édition",WS_OVERLAPPEDWINDOW ,
200,100,600 ,500, NULL, NULL, cetteInstance, NULL);
if (!hwnd) return FALSE;
ShowWindow(hwnd,SW_SHOW);
UpdateWindow( hwnd );
//Boucle de message
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}

Rédactrice : acryline

La liste déroulante

Ce contrôle est appelé sous Windows une COMBOBOX, et permet d'afficher une liste déroulante de choix.

Création

Pour créer une combobox, il faut appeler CreateWindow en spécifiant "COMBOBOX" comme classe.

En ressource, utilisez le mot-clé CONTROL (dont l'utilisation est spécifiée plus loin), ou encore (plus adapté) COMBOBOX sous la forme suivante :

COMBOBOX ID_COMBO, x, y, w, h, STYLES

Néanmoins, cela ne suffit pas, car comme vous l'avez vu, il y a plusieurs possibilités. Ce qui va nous intéresser est donc l'attribut de style. En plus de spécifier les styles habituels (WM_CHILD,WM_VISIBLE), vous pouvez spécifier un ou plusieurs de ces styles :

  • CBS_AUTOHSCROLL : défile automatiquement le texte vers la droite dans le contrôle EDIT quand l'utilisateur tape un caractère à la fin de la ligne. Si ce style n'est pas défini, l'utilisateur ne peut saisir plus de caractères que ceux qui tiennent dans le contrôle EDIT.
  • CBS_DISABLENOSCROLL : dessine une barre de défilement vertical désactivée quand il n'y a pas assez d'éléments. Sans ce style, la barre verticale n'est pas affichée.
  • CBS_DROPDOWN : similaire à CBS_SIMPLE, sauf que la liste n'est pas affichée tant que l'utilisateur ne clique pas sur le contrôle EDIT.
  • CBS_DROPDOWNLIST : similaire à CBS_DROPDOWN, sauf que le contrôle EDIT ne peut pas être modifié, et affiche le texte de l'élément sélectionné (ou rien si aucun élément n'est sélectionné).
  • CBS_HASSTRINGS : spécifie une COMBOBOX dessinée par l'utilisateur, contenant des chaînes de caractères.
  • CBS_LOWERCASE : convertit en minuscules tous les textes.
  • CBS_NOINTEGRALHEIGHT : spécifie que la taille de la COMBOBOX soit exactement celle spécifiée par l'application, au lieu d'arrondir pour n'afficher que des éléments entiers.
  • CBS_OEMCONVERT : convertit le texte entré dans le EDIT vers le set de caractères OEM, puis reconvertit vers le set de caractères Windows.
  • CBS_OWNERDRAWFIXED : spécifie une COMBOBOX dessinée par l'utilisateur : tous les éléments ont la même hauteur
  • CBS_OWNERDRAWVARIABLE : spécifie une COMBOBOX dessinée par l'utilisateur : tous les éléments n'ont pas la même hauteur.
  • CBS_SIMPLE : affiche une liste en permanence, et pas seulement quand l'utilisateur clique dessus. La sélection est affichée dans le EDIT.
  • CBS_SORT : trie automatiquement les chaînes de caractères.
  • CBS_UPPERCASE : convertit automatiquement en majuscules les caractères.

Notifications

CBN_CLOSEUP

Cette notification est envoyée lorsque la liste déroulante a été fermée.

CBN_DBLCLK

Cette notification est envoyée lorsque l'utilisateur double-clique sur un élément de la liste.

CBN_DROPDOWN

Cette notification est envoyée lorsque la liste déroulante a été ouverte.

CBN_EDITCHANGE

Cette notification est envoyée lorsque le texte (ou une portion de texte) de l'EDIT a été modifié (soit parce que l'utilisateur a sélectionné un élément, soit parce qu'il a entré du texte).

Cette notification est envoyée après que le contrôle ait été redessiné.

CBN_EDITUPDATE

Cette notification est envoyée lorsque le texte (ou une portion de texte) de l'EDIT a été modifié (soit parce que l'utilisateur a sélectionné un élément, soit parce qu'il a entré du texte).

Cette notification est envoyée avant que le contrôle ait été redessiné.

CBN_SELCHANGE

Cette notification est envoyée lorsque la sélection en cours de la liste a changé.

CBN_SELENDCANCEL

Cette notification est envoyée lorsque l'utilisateur clique sur un élément, puis clique sur un autre contrôle, annulant alors la sélection.

CBN_SELENDOK

Cette notification est envoyée lorsque l'utilisateur clique sur un élément, puis ferme la liste, acceptant alors la sélection.

Messages

Ces messages peuvent être envoyés au contrôle avec la fonction :

SendMessage(hCtl,iCode,wParam,lParam)

Pour chaque message, je décrirai le rôle et la signification de wParam et lParam et de la valeur retournée.

CB_ADDSTRING

Ajoute un élément à la liste (une chaîne de caractères).

  • wParam : 0.
  • lParam : pointeur vers la chaîne de caractères.
  • Valeur de retour : index de l'élément ajouté (relatif à 0).
CB_DELETESTRING

Supprime un élément de la liste (une chaîne de caractères).

  • wParam : index de l'élément (relatif à 0).
  • lParam : 0.
  • Valeur de retour : le nombre d'éléments restants dans la liste, ou CB_ERR en cas d'erreur.
CB_FINDSTRING

Ce message permet de rechercher un élément qui commence par une chaîne de caractères spécifiée.

  • wParam : spécifie l'index du précédent élément trouvé (relatif à 0), ou -1 pour commencer du début.
  • lParam : pointeur sur une chaîne de caractères qui contient les caractères à rechercher.
  • Valeur de retour : index (relatif à 0) de l'élément trouvé, ou CB_ERR si aucun.
CB_FINDSTRINGEXACT

Ce message permet de rechercher une chaîne de caractères qui correspond exactement à celle spécifiée.

  • wParam : spécifie l'index du précédent élément trouvé (relatif à 0), ou -1 pour commencer du début.
  • lParam : pointeur sur la chaîne de caractères à rechercher.
  • Valeur de retour : index (relatif à 0) de l'élément trouvé, ou CB_ERR si aucun.
CB_GETCOUNT

Ce message permet de connaître le nombre d'éléments qu'il y a dans la liste.

  • wParam : 0.
  • lParam : 0.
  • Valeur de retour : le nombre d'éléments, ou CB_ERR en cas d'erreur
CB_GETCURSEL

Ce message permet de connaître l'index de l'élément sélectionné.

  • wParam : 0.
  • lParam : 0.
  • Valeur de retour : index de l'élément sélectionné (relatif à 0), ou CB_ERR si aucun.
CB_GETDROPPEDSTATE

Ce message permet de savoir si la liste est déroulée ou non.

  • wParam : 0.
  • lParam : 0.
  • Valeur de retour : TRUE si elle déroulée, et FALSE sinon.
CB_GETITEMDATA

Ce message permet de récupérer la valeur associée à un élément de la liste par le message CB_SETITEMDATA.

  • wParam : index de l'élément (relatif à 0).
  • lParam : 0.
  • Valeur de retour : valeur associée, ou CB_ERR en cas d'erreur.
CB_GETLBTEXT

Ce message permet de récupérer le texte d'un élément.

  • wParam : index de l'élément (relatif à 0).
  • lParam : pointeur vers la chaîne de caractères qui reçoit le texte.
  • Valeur de retour : longueur du texte (sans le caractère nul), ou CB_ERR en cas d'erreur.

Utilisez le message CB_GETLBTEXTLEN pour récupérer la longueur du texte, et ainsi éviter les débordements.

CB_GETLBTEXTLEN

Ce message permet de récupérer la longueur du texte d'un élément.

  • wParam : index de l'élément (relatif à 0).
  • lParam : 0.
  • Valeur de retour : longueur du texte (sans le caractère nul), ou CB_ERR en cas d'erreur.
CB_INSERTSTRING

Ce message permet d'insérer une chaîne de caractères dans la liste.

  • wParam : index de la position à laquelle insérer la chaîne, ou -1 pour l'ajouter à la fin de la liste.
  • lParam : pointeur vers la chaîne de caractères.
  • Valeur de retour : index de l'élément inséré, ou CB_ERR/CB_ERRSPACE en cas d'erreur.
CB_LIMITTEXT

Ce message permet de limiter le texte écrit par l'utilisateur dans le contrôle EDIT.

  • wParam : nombre maximum de caractères (caractère nul non compris).
  • lParam : 0.
  • Valeur de retour : TRUE
CB_RESETCONTENT

Ce message permet de supprimer tous les éléments de la liste.

  • wParam : 0.
  • lParam : 0.
  • Valeur de retour : CB_OKAY
CB_SETCURSEL

Ce message permet de définir l'élément sélectionné.

  • wParam : index de l'élément (relatif à 0), ou -1 pour n'en sélectionner aucun et effacer le contrôle EDIT.
  • lParam : 0.
  • Valeur de retour : index de l'élément sélectionné, ou CB_ERR en cas d'erreur.
CB_SETITEMDATA

Ce message permet d'associer une valeur à un élément de la liste.

  • wParam : index de l'élément (relatif à 0).
  • lParam : valeur à associer.
  • Valeur de retour : CB_ERR en cas d'erreur.
CB_SHOWDROPDOWN

Ce message permet de montrer où cacher la liste.

  • wParam : TRUE pour afficher la liste, et FALSE pour la cacher.
  • lParam : 0.
  • Valeur de retour : TRUE

Exemple

Ceci est le code complet d'un exemple utilisant la combobox :

#include <windows.h>
#include <stdio.h>
HINSTANCE instance;
#define ID_COMBOBOX_1 110
#define ID_BUTTON_1 111
#define ID_BUTTON_2 112
#define ID_EDIT_1 113
HWND hComboBox1;
HWND hEdit1;
VOID RemplieFenetrePrincipale(HWND fenetrePrincipale)
{
hComboBox1=CreateWindow(
"COMBOBOX",
"",
WS_CHILD|WS_VISIBLE|CBS_DISABLENOSCROLL|CBS_DROPDOWNLIST,
10,10,
180,150,
fenetrePrincipale,
(HMENU)ID_COMBOBOX_1,
instance,
NULL);
hEdit1=CreateWindow(
"EDIT",
"Entrez le texte à ajouter",
WS_CHILD|WS_VISIBLE|ES_AUTOHSCROLL|WS_BORDER,
10,40,
180,20,
fenetrePrincipale,
(HMENU)ID_EDIT_1,
instance,
NULL);
CreateWindow(
"BUTTON",
"Ajouter",
WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,
10,70,
70,20,
fenetrePrincipale,
(HMENU)ID_BUTTON_1,
instance,
NULL);
CreateWindow(
"BUTTON",
"Supprimer",
WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,
90,70,
70,20,
fenetrePrincipale,
(HMENU)ID_BUTTON_2,
instance,
NULL);
}
VOID NotificationControle(HWND fenetrePrincipale,UINT message,WPARAM wParam, LPARAM lParam)
{
UINT iId=LOWORD(wParam);
UINT iCode=HIWORD(wParam);
HWND hCtl=(HWND)lParam;
if(iId==ID_COMBOBOX_1)
{
}
else if(iId==ID_BUTTON_1)
{
CHAR lpText[256];
GetWindowText(hEdit1,lpText,256);
SendMessage(hComboBox1,CB_ADDSTRING,0,(LPARAM)lpText);
}
else if(iId==ID_BUTTON_2)
{
LRESULT lRes=SendMessage(hComboBox1,CB_GETCURSEL,0,0);
if(lRes==CB_ERR)
{
MessageBox(fenetrePrincipale,"Aucun élément sélectionné","Action annulée",MB_OK);
return ;
}
SendMessage(hComboBox1,CB_DELETESTRING,(WPARAM)lRes,0);
}
}
LRESULT CALLBACK procedureFenetrePrincipale(HWND fenetrePrincipale, UINT message, WPARAM wParam, LPARAM lParam)
{
static HWND boutons[2] = {NULL};
switch (message)
{
case WM_CREATE:
RemplieFenetrePrincipale(fenetrePrincipale);
return 0;
case WM_COMMAND:
NotificationControle(fenetrePrincipale,message,wParam,lParam);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(fenetrePrincipale,message,wParam,lParam);
}
}
int APIENTRY WinMain (HINSTANCE cetteInstance, HINSTANCE precedenteInstance,
LPSTR lignesDeCommande, int modeDAffichage)
{
HWND fenetrePrincipale;
MSG message;
WNDCLASS classeFenetre;
instance = cetteInstance;
classeFenetre.style = CS_DBLCLKS;// pour attraper les double-clics
classeFenetre.lpfnWndProc = procedureFenetrePrincipale;
classeFenetre.cbClsExtra = 0;
classeFenetre.cbWndExtra = 0;
classeFenetre.hInstance = NULL;
classeFenetre.hIcon = LoadIcon(NULL, IDI_APPLICATION);
classeFenetre.hCursor = LoadCursor(NULL, IDC_ARROW);
classeFenetre.hbrBackground = (HBRUSH)(1 + COLOR_BTNFACE);
classeFenetre.lpszMenuName = NULL;
classeFenetre.lpszClassName = "classeF";
// On prévoit quand même le cas où ça échoue
if(!RegisterClass(&classeFenetre))
return FALSE;
fenetrePrincipale=CreateWindow(
"classeF",
"Ma premiere fenetre winAPI !",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,CW_USEDEFAULT,
210,140,
NULL,
NULL,
cetteInstance,
NULL);
if (!fenetrePrincipale)
return FALSE;
ShowWindow(fenetrePrincipale,modeDAffichage);
UpdateWindow(fenetrePrincipale);
while(GetMessage(&message,NULL,0,0))
{
TranslateMessage(&message);
DispatchMessage(&message);
}
return message.wParam;
}

Rédacteur : pamaury

La liste de choix

Une list-Box (liste de choix en français) est un contrôle qui contient une liste d'items que l'utilisateur peut choisir comme dans un menu déroulant. On utilise ce contrôle quand l'application doit présenter une liste de noms, des noms de fichiers par exemple, parmi lesquels l'utilisateur fait un choix. Il sélectionne une chaîne en cliquant dessus. La sélection est en surbrillance, et une notification est envoyée à la fenêtre parent.

Création

Pour créer une list-box, il faut appeler CreateWindow en spécifiant "LISTBOX" dans la classe. Ou bien dans un fichier ressource, on écrira par exemple :

CONTROL "", ID_NOMDELALISTBOX, "LISTBOX", WS_CHILD | WS_VISIBLE, x, y, largeur, hauteur

Vous pouvez aussi utiliser le mot-clé LISTBOX.

Néanmoins, cela ne suffit pas, car comme vous vous en doutez, nous avons plusieurs possibilités pour créer notre contrôle. Ce qui va nous intéresser est donc l'attribut de style. En plus de spécifier les styles habituels (WM_CHILD,WM_VISIBLE), vous pouvez spécifier un ou plusieurs de ces styles spécifiques qui commencent tous par "LSB_":

  • LBS_COMBOBOX : notifie à la list-box qu'elle fait partie d'une combo-box (contrôle formé par la réunion d'une list-box et d'un contrôle d'édition). Ceci permet la coordination entre les deux contrôles, de telle sorte qu'ils présentent une interface utilisateur unifiée (UI). La combo-box doit définir ce style. Si ce style est spécifié par la list-box, une erreur en résultera.
  • LBS_DISABLENOSCROLL: affiche une barre verticale de défilement, désactivée quand la boîte ne contient pas assez d'items pour les faire défiler. Si vous ne définissez pas ce style, la barre de défilement sera cachée quand la list-box ne contiendra pas assez d'éléments.
  • LBS_EXTENDEDSEL : permet la sélection de plusieurs items, en utilisant la touche SHIFT et la souris, ou une combinaison de touches particulières.
  • LBS_HASSTRINGS : spécifie que la list-box contient des items constitués de chaînes de caractères. La list-box conserve la mémoire et les adresses des chaînes de caractères. Ainsi, l'application peut utiliser le message MB_GETTEXT pour rechercher le texte pour un item particulier. Par défaut, toutes les list-box ont ce style, à l'exception des list-box qui se redessinent elles-mêmes. Vous pouvez créer une list-box qui se redessine soit avec ce style, soit sans ce style.
  • LBS_MULTICOLUMN : définit une list-box multi-colonnes qui défile horizontalement. Le message LB_SETCOLUMNWIDTH définit la largeur des colonnes.
  • LBS_MULTIPLESEL : une chaîne est sélectionnée à chaque clic. L'utilisateur peut sélectionner plusieurs chaînes.
  • LBS_NODATA : définissez ce style quand le nombre d'items dans la list-box dépasse une centaine. Une list-box no-data doit aussi avoir le style LBS_OWNERDRAWFIXED, mais ne doit pas avoir le style LBS_SORT ou LBS_HASSTRINGS.
    Cette list-box ressemble à une list-box qui se redessine, sauf qu'elle ne contient pas de donnée (data), de chaîne ou de bitmap pour un item. Les commandes pour ajouter, insérer, ou supprimer un item ignorent toujours toute donnée spécifique de l'item ; une requête pour trouver une chaîne à l'intérieur de la list-box échoue toujours. Le système envoie le message WM_DRAWITEM à la fenêtre propriétaire quand un item doit être dessiné. Le membre itemID de la structure DRAWITEMSTRUCT passé avec le message WM_DRAWITEM définit le numéro de ligne de l'item à redessiner. Une list-boxno-data ne peut pas envoyer un message WM_DELEITEM.
  • LBS_NOINTEGRALHEIGHT : définit si la taille de la list-box est exactement la taille spécifiée par l'application quand elle l'a créée. Normalement, le système redimensionne la list-box pour qu'elle n'affiche pas d'item partiellement.
  • LBS_NOREDRAW : spécifie que l'apparence de la list-box n'est pas remise à jour après une modification. Pour changer le mode de mise à jour, utilisez le message WM_SETREDRAW.
  • LBS_NOSEL : spécifie que la list-box contient des items qui peuvent être vus mais pas sélectionnés.
  • LBS_NOTIFY : notifie la fenêtre parent à l'aide d'un message d'entrée chaque fois que l'utilisateur clique ou double-clique sur une chaîne dans la list-box.
  • LBS_OWNERDRAWFIXED : spécifie que le "propriétaire" de la list-box gère la réactualisation de son contenu et veille à ce que les items de la list-box conservent la même hauteur. La fenêtre propriétaire reçoit le message WM_MEASUREITEM quand la list-box est créée, et le message WM_DRAWITEM quand l'aspect visuel de la list-box a changé.
  • LBS_OWNERDRAWVARIABLE : spécifie que le propriétaire de la list-box est responsable de l'actualisation de son contenu, et que les items dans la list-box ont une hauteur variable. La fenêtre propriétaire reçoit le message WM_MEASUREITEM pour chaque item dans une combo-box quand la combo-box est créée, et WM_DRAWITEM quand l'aspect visuel de la combo-box change.
  • LBS_SORT : met les chaînes de la list-box dans l'ordre alphabétique.
  • LBS_STANDARD : met les chaînes de la list-box dans l'ordre alphabétique. La fenêtre parent reçoit un message d'entrée chaque fois que l'utilisateur clique ou double clique sur une chaîne. La list-box a des bords sur tout son pourtour.

Les notifications

L'utilisateur envoie des requêtes d'édition en utilisant le clavier ou la souris. Le système envoie chaque requête à la fenêtre parent du contrôle dans le message WM_COMMAND.
J'ai considéré que vous savez comment interagir avec ce message, et je décrirai donc ici uniquement les codes de notification.

LBN_DBLCLK

Notification envoyée par la list-box quand l'utilisateur double-clique sur une chaîne dans la list-box.

LBN_SELCANCEL

Une application envoie cette notification quand l'utilisateur annule la sélection dans une list-box.

LBN_SELCHANGE

Une application envoie cette notification quand la sélection dans une list-box vient de changer.

LBN_SETFOCUS

Une application envoie cette notification quand la list-box reçoit le focus clavier.

Parmi les notifications, il existe également des messages de types WM_, qui seront reçus par la procédure de la fenêtre parent.

WM_CTLCOLORLISTBOX

Ce message est envoyé à la fenêtre parent de la list-box avant que le système ne dessine la list-box. En répondant à ce message, la fenêtre parent peut définir les couleurs du texte et du fond de la list-box en utilisant le dispositif de handle contextuels spécifique.
La list-box sera coloriée avec la brosse retournée par ce message.

Les messages

Ces messages peuvent être envoyés au contrôle avec la fonction :

SendMessage(hCtl,iCode,wParam,lParam)

Pour chaque message, je décrirai le rôle et la signification de wParam, de lParam et de la valeur retournée.

LB_ADDFILE

L'application envoie ce message pour ajouter le nom de fichier spécifique à la list-box qui contient une liste de répertoires.

  • wparam : 0
  • lParam : pointeur sur un buffer qui définit le nom du fichier à ajouter.
  • Valeur retournée : index du fichier ajouté dont la série commence à 0, ou LB_ERR si une erreur survient.

La list-box à laquelle on va ajouter le paramètre lParam doit avoir été remplie à l'aide de la fonction DlgDirList.

LB_ADDSTRING

Une application envoie ce message pour ajouter une chaîne dans la list-box. Si la list-box n'a pas le style LBS_SORT, la chaîne est ajoutée à la fin de la liste. Autrement, la chaîne est insérée dans la liste, et la liste est réorganisée.

  • wparam : 0
  • lParam : pointeur sur une chaîne terminée par un caractère nul qui sera ajouté.
  • Valeur retournée : index d'origine 0 de la chaîne dans la list-box signifie que le message a réussi. LB_ERR indique qu'une erreur est survenue. LB_ERRSPACE indique qu'il n'y a pas assez de place pour stocker la nouvelle chaîne.
LB_DELETESTRING

Ce message est envoyé par l'application pour supprimer une chaîne dans la list-box.

  • wparam : index d'origine 0 de la chaîne dans la list-box.
  • lParam : 0
  • Valeur retournée : le nombre de chaînes supprimées dans la liste signifie que l'opération a réussi. LB_ERR indique que l'index spécifié est un index supérieur au nombre d'items de la liste.
LB_FINDSTRING

Ce message est envoyé par l'application pour trouver la première chaîne dans la list-Box contenant le préfixe précisé.

  • wparam : index, faisant partie d'une suite commençant par zéro, de l'item placé avant le premier item recherché. Quand la recherche atteint la fin de la liste, elle se poursuit en revenant au début de la list-box jusqu'à l'item spécifié par le paramètre d'index de départ. Si l'index de départ est -1, la recherche va du début à la fin de la list-box.
  • lParam : pointeur sur une chaîne à terminaison nulle qui contient le préfixe recherché. La recherche est indépendante de la case ; ainsi, cette chaîne peut contenir n'importe quelle combinaison de lettres majuscules ou minuscules.
  • Valeur retournée : si c'est l'index de l'item associé, le message a réussi. LB_ERR indique que la recherche est infructueuse.
LB_FINDSTRINGEXACT

Ce message est envoyé par une application pour trouver la première chaîne associée à la chaîne précisée dans le paramètre lParam.

  • wparam : index (série d'origine 0) de l'item situé avant le premier item où commence la recherche. Quand la recherche atteint la fin de la liste, elle se poursuit en revenant au début de la list-box jusqu'à l'item spécifié par le paramètre d'index de départ. Si l'index de départ est -1, la recherche va du début à la fin de la list-box.
  • lParam : pointeur sur une chaîne à terminaison nulle contenant le nom complet du fichier recherché avec son extension. La recherche est indépendante de la case ; ainsi, cette chaîne peut contenir n'importe quelle combinaison de lettres majuscules ou minuscules.
  • Valeur retournée : si c'est l'index de l'item associé, le message a réussi. LB_ERR indique que la recherche est infructueuse.
LB_GETCARETINDEX

Ce message est envoyé par une application pour déterminer l'index de l'item ayant le focus dans une list-box à sélection multiple. L'item peut ou ne peut pas être sélectionné.

  • wparam : 0
  • lParam : 0
  • Valeur retournée : index de l'item de la list-box ayant le focus. Si la list-box est une list-box à sélection unique, la valeur est l'index de l'item sélectionné, s'il y en a un.
LB_GETCOUNT

Ce message est envoyé par l'application pour rechercher le nombre d'items qu'il y a dans une list-box.

  • wparam : 0
  • lParam : 0
  • Valeur retournée : nombre d'items dans la list-box si le message réussit. LB_ERR indique qu'une erreur s'est produite.
LB_GETCURSEL

Ce message est envoyé par une application pour recherche l'index de l'item sélectionné, s'il y en a un, dans une list-box à sélection unique.

  • wparam : 0
  • lParam :0
  • Valeur retournée : dans une list-box à une seule sélection, cette valeur est l'index de l'item sélectionné. S'il n'y a pas de sélection, la valeur retournée est LB_ERR.

Vous ne devez pas envoyer ce message à une list-box à sélection multiple.

LB_GETITEMDATA

Ce message est envoyé par une application pour trouver la valeur 32 bit définie par l'application, et associée à l'item spécifié de la list-box.

  • wparam : index de l'item
  • lParam : 0
  • Valeur retournée : valeur 32 bits associée à l'item, ou LB-ERR si une erreur est survenue. Si l'item est dans une list-box avec une auto-remise à jour, et qui a été créée sans le style LBS_HASSTRING, cette valeur 32 bits sera dans le paramètre lParam des messages LB_ADDSTRING ou LB_INSERTSTRING, qui ajoutent un item à la list-box. Autrement, c'est la valeur de lParam du message LB_SETITEMDATA.
LB_GETITEMRECT

Ce message est envoyé par l'application pour rechercher les dimensions du rectangle qui limite un item de la list-box quand il est normalement affiché dans la list-box.

  • wparam : index de l'item
  • lParam : pointeur sur une structure RECT qui reçoit les coordonnées clientes de l'item dans la list-box.
  • Valeur retournée : LB_ERR s'il y a une erreur.
LB_GETSELITEMS

Ce message est envoyé par une application pour remplir un buffer avec un tableau d'entiers (integer) qui définit les numéros des items dans la sélection d'items d'une list-box à sélection multiple.

  • wparam : nombre maximum d'items sélectionnés dont les numéros seront placés dans le buffer.
  • lParam : pointeur sur le buffer assez grand pour contenir le nombre d'entiers défini dans le paramètre lParam.
  • Valeur retournée : nombre d'items placés dans le buffer. Si la list-box est à sélection unique, la valeur retournée est LB_ERR. Ce message retourne aussi LB_ERR si vous passez des paramètres invalides à une list-box à sélection multiple.
LB_GETSELCOUNT

Ce message est envoyé par une application pour rechercher le nombre total d'items sélectionnés dans une list-box à sélection multiple.

  • wparam : 0
  • lParam : 0
  • Valeur retournée : nombre d'items sélectionnés dans la list-box si le message réussit. LB_ERR si la list-box est à sélection unique.
LB_GETTEXT

Ce message est envoyé par une application pour rechercher une chaîne dans une list-box.

  • wparam : index de la chaîne cherchée.
  • lParam : pointeur sur un buffer qui reçoit la chaîne. Le buffer doit avoir une taille suffisante pour contenir la chaîne avec un caractère nul de terminaison. Un message LB_GETTEXTLEN peut être envoyé après LB_GETTEXT pour rechercher la longueur, en caractères, de la chaîne.
  • Valeur retournée : longueur de la chaîne, en caractères sans le caractère nul de terminaison si le message réussit. LB_ERR indique que l'index n'est pas un index valide.
LB_GETTEXTLEN

Une application envoie le message LB_GETTEXTLEN pour retrouver la longueur d'une chaîne dans la list-box.

  • wparam : index (origine 0) de la chaîne.
  • lParam : 0
  • Valeur retournée : longueur de la chaîne, en CHAR, en excluant le caractère nul terminal. Sous certaines conditions, cette valeur peut être supérieure à la longueur du texte.
    Si wParam ne définit pas un index valide, cette valeur est LB_ERR.

Pour obtenir à tous les coups l'exacte longueur d'un texte, utilisez les messages WM_GETTEXT, LB_GETTEXT, ou CB_GETLBTEXT , ou la fonction GetWindowText.

LB_INSERTSTRING

Une application envoie ce message pour insérer une chaîne dans une list-box. Différemment du message LB_ADDSTING, ce message ne produit pas de liste que l'on pourrait trier avec le style LBS_SORT.

  • wparam : définit l'index (d'origine 0) de la position où il faut insérer l'item. Si ce paramètre est 1, la chaîne sera ajoutée à la fin de la liste.
  • lParam : pointeur sur la chaîne à terminaison nulle que l'on veut insérer.
  • Valeur retournée : index de la position à laquelle la chaîne doit être insérée. Si une erreur survient, la valeur retournée est LB_ERR. S'il n'y a pas assez de place pour stocker la nouvelle chaîne, la valeur retournée sera LB_ERRSPACE.
LB_RESETCONTENT

L'application envoie ce message pour supprimer tous les items d'une list-box.

  • wparam : 0
  • lParam : 0
  • Valeur retournée : ne retourne pas de valeur.
LB_SETCURSEL

Une application envoie ce message pour sélectionner une chaîne et la faire apparaître en la faisant défiler dans la zone visible, si nécessaire. Quand la nouvelle chaîne est sélectionnée, la list-box supprime la surbrillance de la chaîne sélectionnée préalablement.

  • wparam : définit l'index (d'origine 0) de la chaîne sélectionnée. Si ce paramètre est -1, la list-box est définie comme n'ayant pas de sélection.
  • lParam : 0
  • Valeur retournée : si une erreur survient, la valeur est LB_ERR. Si wParam est -1, la valeur retournée est LB_ERR même s'il n'y a pas eu d'erreur.

N'utilisez ce message qu'avec une list-box à sélection unique. Vous ne pouvez pas utiliser ce message pour définir ou annuler une sélection dans une list-box à sélection multiple.

LB_SETHORIZONTALEXTENT

Une application envoie ce message pour définir la distance de déplacement horizontal (scrolling), en pixels, d'une list-box. Si la largeur de la list-box est inférieure à cette valeur, la barre horizontale fait défiler les items horizontalement. Si la largeur de la list-box est égale ou supérieure à cette valeur, la barre horizontale de défilement est cachée.

  • wparam : définit le nombre de pixels de déplacement de la list-box.
  • lParam : 0
  • Valeur retournée : pas de valeur retournée.

La list-box doit avoir le style WS_HSCROLL pour pouvoir utiliser ce message.

LB_SETITEMDATA

Une application envoie ce message pour définir une valeur associée à l'item spécifié d'une list-box.

  • wparam : définit l'index (d'origine 0) de l'item. Si cette valeur est -1, la valeur de lParam sera appliquée à tous les items de la list-box.
  • lParam : définit la valeur à associer à l'item.
  • Valeur retournée : si une erreur survient, LB_ERR.
LB_SETSEL

Une application envoie ce message pour sélectionner une chaîne dans une list-box à sélection multiple.

  • wparam : précise comment le sélection va être définie. Si ce paramètre est TRUE, la chaîne est sélectionnée et mise en surbrillance ; si ce paramètre est FALSE, la surbrillance est annulée et la chaîne n'est pas sélectionnée.
  • lParam : définit l'index (d'origine 0) de la chaîne choisie. Si ce paramètre est 1, la sélection est ajoutée ou annulée de toutes les chaînes, en fonction du paramètre wParam.
  • Valeur retournée : LB_ERR en cas d'erreur.

Exemple

#include <windows.h>
#include <stdio.h>
#define ID_BOUTON1 110
#define ID_BOUTON2 111
//variables globales
HINSTANCE inst;
HWND hListBox[2]; //handle des deux contrôles d'édition
//Afficher une list-Box et la remplir
HWND afficheListBox (HWND hwnd)
{
HWND hListBox=CreateWindow(
"LISTBOX","",
WS_VISIBLE|WS_CHILD|WS_BORDER |LBS_NOTIFY,
50,50,150,200,hwnd,NULL,inst,NULL);
//Entrer des items dans la list-box
SendMessage (hListBox, LB_ADDSTRING ,0,(LPARAM)"Première entrée");
SendMessage (hListBox, LB_ADDSTRING ,0,(LPARAM)"Deuxième entrée");
SendMessage (hListBox, LB_ADDSTRING ,0,(LPARAM)"Troisième entrée");
SendMessage (hListBox, LB_ADDSTRING ,0,(LPARAM)"Quatrième entrée");
return hListBox;
}
//Boutons pour la démo
HWND boutonMessage(HWND hwnd,HMENU code,long x, long y, char * texte)
{
HWND hBouton=CreateWindow(
"BUTTON",
texte,
WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,
x,y,
350,30,
hwnd,
code,
inst,
NULL);
return hBouton;
}
LRESULT CALLBACK Procedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
static HWND hBouton[1]={0};
char texte[5]={0},texte2[50]={0};
switch (message)
{
//afficher les contrôles d'édition à la réception du message WM_CREATE
case WM_CREATE:
hListBox[0]=afficheListBox (hwnd);
//afficher les boutons pour la démo
hBouton[0]= boutonMessage(hwnd, (HMENU)ID_BOUTON1,220,90,"Message LB_GETCURSEL: item sélectionné ");
return 0;
case WM_COMMAND:
switch (LOWORD(wParam))
{
//test du message LB_GETCURSEL
case ID_BOUTON1 :
//Trouver le numéro de la ligne sélectionnée, et transformer le résultat en chaîne
sprintf(texte,"%d",(SendMessage(hListBox[0],LB_GETCURSEL,0,0)+1));
//Afficher une boîte de dialogue
//s'il y a une sélection
if (SendMessage(hListBox[0],LB_GETCURSEL,0,0)!= LB_ERR)
{
strncat(texte2,"Vous avez sélectionné la ligne ",50);
strncat(texte2,texte,50);
}
else //pas de sélection
{
strncat(texte2,"Vous n'avez sélectionné aucune ligne." ,50);
}
MessageBox(hwnd,(LPCTSTR )texte2,"",MB_OK|MB_ICONWARNING);
break;
//ajoutez d'autres tests et d'autres boutons si vous le voulez
//case ID_BOUTON2:
//autre test
//breaks;
}
switch (HIWORD(wParam))
{
case LBN_SELCHANGE :
char temp[256] = "";
SendMessage(hListbox, LB_GETTEXT, SendMessage(hListbox[0], LB_GETCURSEL, 0, 0), temp);
MessageBox(hwnd,temp, "Item sélectionné :", MB_ICONINFORMATION);
break;
}
return 0;
case WM_CLOSE:
DestroyWindow(hwnd);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(hwnd, message, wParam, lParam);
}
}
int WINAPI WinMain(HINSTANCE cetteInstance, HINSTANCE precedenteInstance,
LPSTR lignesDeCommande, int modeDAffichage)
{
//Variables de la fonction principale
MSG msg;
WNDCLASS wc;
HWND hwnd;
inst = cetteInstance;
// Structure de la classe de la fenêtre principale
wc.style = 0 ;
wc.lpfnWndProc = Procedure;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = cetteInstance;
wc.hIcon = NULL;
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hbrBackground = (HBRUSH)(1+ COLOR_BTNFACE);
wc.lpszMenuName = NULL;
wc.lpszClassName = "ClassePrincipale";
//Enregistrer la classe de fenêtre
if(!RegisterClass(&wc)) return FALSE;
hwnd = CreateWindow("ClassePrincipale", "Démo du contrôle List-Box",WS_OVERLAPPEDWINDOW ,
200,100,600 ,300, NULL, NULL, cetteInstance, NULL);
if (!hwnd) return FALSE;
ShowWindow(hwnd,SW_SHOW);
UpdateWindow( hwnd );
//Boucle de message
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}

Rédactrice : acryline

La glissière

Le slider, ou trackbar, (glissière en français) est très utilisé dans la plupart des programmes d'aujourd'hui. Vous l'avez sûrement utilisé sans même savoir ce qui se passait derrière, chose que je propose de faire ici. :p

Il est loin d'être particulièrement difficile, et je ne vous cacherai pas que sa préparation est plus l'objet d'erreurs que son utilisation. En effet, il fait partie de la Common Controls Library, ou bibliothèque des contrôles communs, que vous devrez intégrer et lier au projet.

Préparation préalable

Intégration

Afin de déclarer le slider, ou plutôt sa classe, vous aurez besoin d'insérer dans votre projet :

#include <commctrl.h>

Linker

Et en ce qui concerne le linker, vous devrez ajouter l'entrée -lcomctl32, ou sous C::B comctl32.

En bref, rien de bien sorcier. La seule source d'erreurs est une potentielle faute d'orthographe. ;)

Création

Concernant sa création, vous pouvez passer comme d'habitude par CreateWindow, ou par les template de ressource. Le mot-clé à utiliser est alors CONTROL. Je vous l'avais dit qu'il était générique... c'est le mot-clé se rapprochant le plus de CreateWindow. Mais dans les deux cas, le nom de classe à utiliser est TRACKBAR_CLASS. En plus de spécifier cette constante prédéfinie au 2ème argument de CreateWindow (ou au 3ème de CONTROL), vous pouvez utiliser un ou plusieurs, par associations de flag, des styles suivants :

  • TBS_AUTOTICKS : le slider comporte une marque (trait) pour chaque palier d'incrémentation déterminé à partir de ses marges.
  • TBS_BOTH : le slider comporte des marques sur ses deux côtés.
  • TBS_BOTTOM : le slider comporte des marques seulement en-dessous de lui.

Style valide uniquement avec un slider horizontal.

  • TBS_DOWNISLEFT : utilisé avec un slider vertical, il permet d'inverser le sens d'incrémentation.
  • TBS_FIXEDLENGTH : permet au curseur de changer sa taille en recevant le message TBS_SETTHUMBLENGTH.
  • TBS_HORZ : style par défaut ; le slider est orienté horizontalement.
  • TBS_LEFT : le slider comporte des marques sur son côté gauche.

Style valide uniquement quand son orientation est verticale.

  • TBS_NOTHUMB : le slider ne comporte pas de curseur.
  • TBS_NOTICKS : le slider ne comporte pas de marques.
  • TBS_REVERSED : le slider est inversé ; son sens d'incrémentation est alors de la droite vers la gauche.

Supporté uniquement par la version 5.80 ou ultérieure.

  • TBS_RIGHT : même effet que TBS_LEFT, mais sur le côté droit.

Style valide uniquement quand son orientation est verticale.

  • TBS_TOOLTIPS : le slider supporte les Tooltip, ou ballons d'informations. Sa position pourra alors être changée avec TBM_SETTIPSIDE.

Supporté uniquement par la version 4.70 ou ultérieure.

  • TBS_TOP : le slider comporte des marques au-dessus de lui.

Style valide uniquement quand son orientation est horizontale.

  • TBS_VERT : le slider est alors orienté verticalement.

Il est évident que vous ne devez pas combiner des styles contradictoires, comme des orientations contraires...

Sa création étant maintenant démystifiée, passons maintenant aux notifications que ce contrôle peut envoyer, et ensuite aux messages qu'il peut recevoir et traiter.

Notifications

Je vais décrire ici les notifications envoyées par le contrôle via le message WM_COMMAND (sauf mention contraire). Il est assumé que vous savez comment interagir avec ce message, et je décrirai donc ici uniquement les codes de notifications.

Les notifications WM_HSCROLL et WM_VSCROLL ne transitent pas par WM_COMMAND, elles sont traitées en tant que tel à part (comme on traite WM_COMMAND).

Je vous précise au préalable que le slider envoie, à l'instar du contrôle static, une notification WM_CTLCOLORSTATIC pour colorer son pourtour. Vous pourrez alors changer sa couleur de fond (cf "Le contrôle Static").

WM_HSCROLL ou WM_VSCROLL

Envoyés à la procédure de la fenêtre parent, ces notifications indiquent un drag du curseur par l'utilisateur :
- horizontal, pour un slider orienté horizontalement
- vertical, pour un slider orienté verticalement.

Le mot bas du paramètre wParam contient le code de notification.

TB_THUMBTRACK

Cette notification est envoyée lorsque l'utilisateur bouge le curseur.

Le mot haut du paramètre wParam contient la position changée du curseur.

TB_THUMBPOSITION

Cette notification est envoyée lorsque l'utilisateur a bougé le curseur, puis relâché la souris (équivaut donc à TB_THUMBTRACK + WM_LBUTTONUP).

Le mot haut du paramètre wParam contient la position changée du curseur.

Messages

Ces messages peuvent être envoyés au contrôle avec la fonction :

SendMessage(hCtl,iCode,wParam,lParam)

Pour chaque message je décrirai le rôle et la signification de wParam et lParam, ainsi que la valeur retournée.

TBM_CLEARSEL

Ce message permet de nettoyer la sélection en cours.

  • wParam : (BOOL) s'il vaut TRUE, redessine le slider.
  • lParam : 0.
  • Valeur de retour : aucune.
TBM_CLEARTICS

Ce message permet de supprimer les marques du slider, exceptées la première et la dernière.

  • wParam : (BOOL) s'il vaut TRUE, redessine le slider.
  • lParam : 0.
  • Valeur de retour : aucune.
TBM_GETCHANNELRECT

Ce message permet de récupérer les dimensions du rectangle limite du slider, dans lequel il évolue.

  • wParam : 0.
  • lParam : (LPRECT) adresse d'une variable de type RECT qui va recevoir les dimensions.
  • Valeur de retour : aucune.
TBM_GETPOS

Ce message permet de récupérer la position courante du curseur.

  • wParam : 0.
  • lParam : 0.
  • Valeur de retour : valeur 32 bits représentant la position courante.
TBM_GETRANGEMAX ou TBM_GETRANGEMIN

Ces messages permettent de récupérer la valeur maximale ou minimale que peut prendre le slider (ses bornes).

  • wParam : 0.
  • lParam : 0.
  • Valeur de retour : valeur 32 bits désignant la valeur de la borne spécifiée.
TBM_GETTHUMBLENGTH

Ce message permet de récupérer la longueur du curseur du slider.

  • wParam : 0.
  • lParam : 0.
  • Valeur de retour : longueur du curseur (en pixels).
TBM_GETTHUMBRECT

Ce message permet de récupérer les coordonnées et dimensions du curseur.

  • wParam : 0.
  • lParam : 0.
  • Valeur de retour : (RECT) dimensions et positions du curseur.
TBM_GETTOOLTIPS

Ce message permet de récupérer un handle sur un ballon de message associé au slider s'il y a lieu.

  • wParam : 0.
  • lParam : 0.
  • Valeur de retour : (HWND) handle du tooltip assigné, s'il y en a un. Dans le cas contraire, NULL.

Le style TBS_TOOLTIPS est évidemment nécessaire ici.

TBM_SETPOS

Ce message permet de définir la position courante du curseur dans le slider.

  • wParam : (BOOL) définit l'état de dessin du contrôle : s'il vaut TRUE, le slider sera redessiné après.
  • lParam : (LONG) définit la nouvelle position du curseur, en unités logiques, comprise entre les bornes du slider.
  • Valeur de retour : aucune.
TBM_SETRANGE

Ce message permet de définir les bornes du slider.

  • wParam : (BOOL) définit l'état de dessin du contrôle : s'il vaut TRUE, le slider sera redessiné après.
  • lParam : (LONG) nouvelles bornes, définies grâce à la macro MAKELONG(min, max)
  • Valeur de retour : aucune.
TBM_SETRANGEMAX ou TBM_SETRANGEMIN

Ces messages ont la même fonction que TBM_SETRANGE, mais sur une seule des bornes, spécifiée dans leur nom.

  • wParam : (BOOL) définit l'état de dessin du contrôle : s'il vaut TRUE, le slider sera redessiné après.
  • lParam : (LONG) définit la nouvelle borne (minimale ou maximale).
  • Valeur de retour : aucune.
TBM_SETTHUMLENGTH

Ce message permet de définir la longueur du curseur du slider.

  • wParam : (UINT) longueur du curseur, en pixels.
  • lParam : 0.
  • Valeur de retour : aucune.
TBM_SETTICFREQ

Ce message permet de définir la fréquence des marques.

  • wParam : (WORD) fréquence des marques (1 = chaque palier).
  • lParam : 0.
  • Valeur de retour : aucune.
TBM_SETTIPSIDE

Ce message permet de définir le côté du slider où sera affiché le ballon d'infos.

  • wParam : (int) définit le côté du ballon : peut alors prendre les valeurs TBTS_TOP (haut), TBTS_LEFT (gauche), TBTS_RIGHT (droite), TBTS_BOTTOM (bas).
  • lParam : 0.
  • Valeur de retour : précédente position du ballon.

Utile uniquement avec le style TBS_TOOLTIP.

TBM_SETTOOLTIPS

Ce message permet de définir le ballon d'informations associé au slider.

  • wParam : (HWND) handle d'un ballon déjà créé.
  • lParam : 0.
  • Valeur de retour : aucune.

Exemple

Le présent exemple montre quelques fonctions permettant de créer ou manipuler le slider simplement (à utiliser, non compilable tel quel) :

HWND createSlider (HINSTANCE instance, HWND parentWindow)
{
return CreateWindow(TRACKBAR_CLASS, "", WM_CHILD | WM_VISIBLE | TBS_NOTICKS, 20, 20, 300, 20, parentWindow, (HMENU)NULL, instance, NULL);
};
void setRange (HWND slider, int min, int max)
{
SendMessage(slider, TBM_SETRANGE, TRUE, MAKELONG(min,max));
return;
}
void setPos (HWND slider, int position)
{
SendMessage(slider, TBM_SETPOS, TRUE, position);

return;
}
int getPos (HWND slider)
{
return SendMessage(slider, TBM_GETPOS, 0, 0);
}

Celui-ci est tout bête, mais je ne pense pas que vous vous servirez des autres avant un petit bout de temps. ;)
Rédacteur : Mg++

Le contrôle Static

Ce contrôle est l'un des plus simples et des plus utiles qui soit : il permet d'afficher un libellé de texte, une icône ou une image, mais qui n'interagit pas avec l'utilisateur, d'où son nom.

Création

Pour créer un STATIC, il faut appeler CreateWindow avec comme classe "STATIC", et ajouter en plus des styles classiques (WS_CHILD,WS_VISIBLE) un ou plusieurs de ces styles :

Pour une boîte de dialogue, vous devrez utiliser le mot-clé CONTROL, très pratique, qui est un équivalent template de CreateWindow : son premier paramètre équivaut au 2ème de CreateWindow, son 2ème correspond à son ID, son 3ème à la classe de fenêtre (autrement dit ici STATIC), et son quatrième, ses styles. Les paramètres suivants désignent les dimensions habituelles. Exemple :

//Affiche un static contenant l'image <gras>img</gras> chargée en ressources (cf ci-après)
CONTROL "img", -1, "STATIC", SS_BITMAP, 10, 10, 0, 0

  • SS_BITMAP : spécifie une boîte rectangulaire qui permet d'afficher une image bitmap. La taille du contrôle est déterminée automatiquement en fonction de celle de l'image.
  • SS_BLACKFRAME : spécifie une boîte rectangulaire avec un cadre de la même couleur que celui des fenêtres (noir par défaut).
  • SS_BLACKRECT : spécifie une boîte rectangulaire remplie avec la même couleur que le cadre des fenêtres (noir par défaut).
  • SS_CENTER : spécifie une boîte rectangulaire avec du texte centré. Si le texte est trop long, il est automatiquement réparti en plusieurs lignes.
  • SS_ETCHEDFRAME : dessine le cadre en utilisant l'attribut EDGE_ETCHED.
  • SS_ETCHEDHORZ : dessine les angles du haut et du bas en utilisant l'attribut EDGE_ETCHED.
  • SS_ETCHEDVERT : dessine les angles de gauche et droite en utilisant l'attribut EDGE_ETCHED.
  • SS_GRAYRECT : spécifie une boîte rectangulaire avec un cadre de la couleur en cours du fond d'écran (gris par défaut).
  • SS_GRAYFRAME : spécifie une boîte rectangulaire avec la couleur en cours du fond d'écran (gris par défaut).
  • SS_ICON : spécifie une boîte rectangulaire qui permet d'afficher une icône (ou un curseur animé). La taille du contrôle est déterminée automatiquement en fonction de celle de l'icône.
  • SS_LEFT : spécifie une boîte rectangulaire avec du texte aligné à gauche. Si le texte est trop long, il est automatiquement réparti en plusieurs lignes.
  • SS_LEFTNOWORDWRAP : spécifie une boîte rectangulaire avec du texte aligné à gauche. Si le texte est trop long, il est automatiquement tronqué.
  • SS_NOPREFIX : prévient l'interprétation du signe & dans le texte comme un raccourci clavier.
  • SS_NOTIFY : envoie les notifications STN_CLICKED, STN_DBLCLK, STN_DISABLE et STN_ENABLE à la fenêtre parente.
  • SS_OWNERDRAW : le contrôle doit être dessiné par l'utilisateur.
  • SS_REALSIZEIMAGE : utilisé avec SS_ICON. Au lieu de considérer la taille de la ressource comme taille du contrôle, la taille retournée par LoadImage est utilisée.
  • SS_RIGHT : spécifie une boite rectangulaire avec du texte aligné à droite. Si le texte est trop long, il est automatiquement réparti en plusieurs lignes.
  • SS_RIGHTJUST : utilisé avec SS_ICON ou SS_BITMAP. Lors d'un redimensionnement du contrôle, au lieu de changer la position du coin en bas à droite, c'est la position du coin en haut à gauche qui est modifiée.
  • SS_SIMPLE : spécifie une boîte rectangulaire avec du texte sur une seule ligne. Aucune modification n'est apportée au texte, même si celui-ci est trop long. Le texte n'apparaît pas grisé si le contrôle est désactivé.
  • SS_SUNKEN : dessine un cadre créant l'effet d'un renfoncement dans la fenêtre, autour du contrôle.
  • SS_WHITEFRAME : spécifie une boîte rectangulaire avec un cadre de la même couleur que le fond de la fenêtre (blanc par défaut).
  • SS_WHITERECT : spécifie une boîte rectangulaire remplie avec la même couleur que le fond de la fenêtre.

Notifications

Je vais décrire ici les notifications envoyées par le contrôle via le message WM_COMMAND (sauf mention contraire) . Il est supposé que vous savez comment interagir avec ce message, et je décrirai donc ici uniquement les codes de notifications.

STN_CLICKED

Ce message est envoyé lorsque l'utilisateur clique sur le contrôle.

Vous devez avoir défini le style SS_NOTIFY lors de la création du contrôle.

STN_DBLCLK

Ce message est envoyé lorsque l'utilisateur double-clique sur le contrôle.

Vous devez avoir défini le style SS_NOTIFY lors de la création du contrôle.

STN_DISABLE

Ce message est envoyé lorsque le contrôle est désactivé.

Vous devez avoir défini le style SS_NOTIFY lors de la création du contrôle.

STN_ENABLE

Ce message est envoyé lorsque le contrôle est activé.

Vous devez avoir défini le style SS_NOTIFY lors de la création du contrôle.

WM_CTLCOLORSTATIC

Ce message est envoyé à la fenêtre parent juste avant que le contrôle ne soit dessiné.
Ceci est principalement utile pour changer la couleur du texte, ou du fond du contrôle pour le dessin .

Les paramètres valent alors:

  • wparam : handle du DC sur lequel dessiner.
  • lparam : handle du bouton
  • Valeur de retour : handle d'une brosse qui sera utilisée pour le dessin du fond.

- Ce message est envoyé directement à la fonction de gestion des messages, et non pas via le message WM_COMMAND
- La brosse retournée ne sera pas automatiquement détruite par le système.

Messages

Ces messages peuvent être envoyés au contrôle avec la fonction :

SendMessage(hCtl,iCode,wParam,lParam)

Pour chaque message, je décrirai le rôle et la signification de wParam, lParam et de la valeur retournée.

STM_GETICON

Ce message permet de récupérer le handle de l'icône associée au contrôle.

  • wParam : 0.
  • lParam : 0.
  • Valeur de retour : handle de l'icône associée, ou NULL si aucune.
STM_GETIMAGE

Ce message permet de récupérer le handle de l'image associée au contrôle.

  • wParam : spécifie le type de l'image à récupérer. Ce peut être une de ces valeurs :
  • IMAGE_BITMAP
  • IMAGE_CURSOR
  • IMAGE_ENHMETAFILE
  • IMAGE_ICON
  • lParam : 0.
  • Valeur de retour : handle de l'image associée, ou NULL si aucune.
STM_SETICON

Ce message permet de définir l'icône associée au contrôle.

  • wParam : handle de l'icône.
  • lParam : 0.
  • Valeur de retour : handle de l'icône précédemment associée, ou NULL si aucune.
STM_SETIMAGE

Ce message permet de définir l'image associée au contrôle.

  • wParam : spécifie le type de l'image à définir. Ce peut être une de ces valeurs :
  • IMAGE_BITMAP
  • IMAGE_CURSOR
  • IMAGE_ENHMETAFILE
  • IMAGE_ICON
  • lParam : handle de l'image.
  • Valeur de retour : handle de l'image précédemment associée, ou NULL si aucune.

Exemple

Ceci est le code complet d'un exemple utilisant les STATIC.

#include <windows.h>
#include <stdio.h>
HINSTANCE instance;
#define ID_STATIC_1 110
VOID RemplieFenetrePrincipale(HWND fenetrePrincipale)
{
HWND hCtl=CreateWindow(
"STATIC",
"Double-\ncliquez\nsur moi !!",
WS_CHILD|WS_VISIBLE|SS_CENTER|SS_NOTIFY,
10,10,
100,60,
fenetrePrincipale,
(HMENU)ID_STATIC_1,
instance,
NULL);
hCtl=CreateWindow(
"STATIC",
"",
WS_CHILD|WS_VISIBLE|SS_ICON,
10,80,
0,0,
fenetrePrincipale,
NULL,
instance,
NULL);
HANDLE hIcon=LoadIcon(NULL,IDI_ERROR);
SendMessage(hCtl,STM_SETICON,(WPARAM)hIcon,0);
hCtl=CreateWindow(
"STATIC",
"",
WS_CHILD|WS_VISIBLE|SS_ICON,
120,10,
0,0,
fenetrePrincipale,
NULL,
instance,
NULL);
HANDLE hImage=LoadImage(NULL,MAKEINTRESOURCE(OCR_NORMAL),IMAGE_CURSOR,0,0,LR_SHARED);
SendMessage(hCtl,STM_SETIMAGE,(WPARAM)IMAGE_CURSOR,(LPARAM)hImage);
hCtl=CreateWindow(
"STATIC",
"",
WS_CHILD|WS_VISIBLE|SS_BITMAP,
120,60,
0,0,
fenetrePrincipale,
NULL,
instance,
NULL);
hImage=LoadImage(NULL,MAKEINTRESOURCE(OBM_CHECK),IMAGE_BITMAP,0,0,LR_SHARED);
SendMessage(hCtl,STM_SETIMAGE,(WPARAM)IMAGE_BITMAP,(LPARAM)hImage);
}
VOID NotificationControle(HWND fenetrePrincipale,UINT message,WPARAM wParam, LPARAM lParam)
{
UINT iId=LOWORD(wParam);
UINT iCode=HIWORD(wParam);
HWND hCtl=(HWND)lParam;
switch(iId)
{
case ID_STATIC_1:
if(iCode==STN_DBLCLK)
MessageBox(fenetrePrincipale,"Vous avez double-cliqué sur le premier STATIC","",MB_OK);
break;
}
}
LRESULT CALLBACK procedureFenetrePrincipale(HWND fenetrePrincipale, UINT message, WPARAM wParam, LPARAM lParam)
{
static HWND boutons[2] = {NULL};
switch (message)
{
case WM_CREATE:
RemplieFenetrePrincipale(fenetrePrincipale);
return 0;
case WM_COMMAND:
NotificationControle(fenetrePrincipale,message,wParam,lParam);
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(fenetrePrincipale,message,wParam,lParam);
}
}
int APIENTRY WinMain (HINSTANCE cetteInstance, HINSTANCE precedenteInstance,
LPSTR lignesDeCommande, int modeDAffichage)
{
HWND fenetrePrincipale;
MSG message;
WNDCLASS classeFenetre;
instance = cetteInstance;
classeFenetre.style = CS_DBLCLKS;// pour attraper les double-clics
classeFenetre.lpfnWndProc = procedureFenetrePrincipale;
classeFenetre.cbClsExtra = 0;
classeFenetre.cbWndExtra = 0;
classeFenetre.hInstance = NULL;
classeFenetre.hIcon = LoadIcon(NULL, IDI_APPLICATION);
classeFenetre.hCursor = LoadCursor(NULL, IDC_ARROW);
classeFenetre.hbrBackground = (HBRUSH)(1 + COLOR_BTNFACE);
classeFenetre.lpszMenuName = NULL;
classeFenetre.lpszClassName = "classeF";
// On prévoit quand même le cas où ça échoue
if(!RegisterClass(&classeFenetre))
return FALSE;
fenetrePrincipale=CreateWindow(
"classeF",
"Ma premiere fenetre winAPI !",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,CW_USEDEFAULT,
200,200,
NULL,
NULL,
cetteInstance,
NULL);
if (!fenetrePrincipale)
return FALSE;
ShowWindow(fenetrePrincipale,modeDAffichage);
UpdateWindow(fenetrePrincipale);
while(GetMessage(&message,NULL,0,0))
{
TranslateMessage(&message);
DispatchMessage(&message);
}
return message.wParam;
}

Rédacteur : pamaury

Ce sont les principaux contrôles. Les autres vous seront présentés dans un autre chapitre de ce cours. ;)


L'affichage.htm

L'AFFICHAGE

Vous allez durant ce chapitre apprendre à gérer l'affichage manuel d'informations dans votre fenêtre : celles ci peuvent être du texte, des formes géométriques (dans ce cas ci on parlera de dessin) ou des images (en général des bitmaps).

Les contextes de périphériques

L'API windows permet de dessiner dans n'importe quel périphérique (imprimante, écran etc.) sans se préoccuper de son fonctionnement (le reste du travail est effectué grâce aux drivers des périphériques), ce qui, évidemment, est très pratique ;) .

Afin de pouvoir dessiner, nous devons obtenir un handle de contexte de périphérique, traduit en anglais par "Handle on Device Context", ou HDC.

Théorique

Un HDC peut être assimilé, pour une meilleure compréhension, à une surface potentiellement dessinable obtenue par l'appel de GetDC. Cette fonction, prenant comme unique paramètre le handle de la fenêtre dont l'on veut récupérer le DC, retourne un HDC portant sur toute la surface de la fenêtre.

Toutes les fonctions de dessin ne nécessitent généralement qu'un contexte de périphérique. Vous vous demandez alors sûrement comment appliquer des personnalisations temporaires pour chaque dessin ? Eh bien toutes ces personnalisations se passent sur le DC lui-même. La fonction de dessin, utilisant le DC courant, sera lors affectée par les modifications appliquées.

Une fois le DC récupéré, chaque personnalisation possible (changements de couleurs, de fontes...) se fait à l'aide d'une sélection. Cette sélection d'un objet (personnalisation) dans un contexte de périphérique a pour effet de l'appliquer au DC. C'est alors qu'arrive SelectObject. Cette fonction, prenant comme deuxième paramètre l'objet à sélectionner dans le HDC spécifié en premier paramètre, retourne l'ancien objet correspondant avant l'application. Ainsi, pour qu'une couleur seule (par exemple, le vert) soit appliquée sur un HDC, on obtient :

brushDeCouleurAncienne = SelectObject(dcCourant, brushAppliquee);
//Où brushAppliquee = CreateSolidBrush(RGB(0,255,0));

Après utilisation, n'oubliez pas de libérer le DC avec ReleaseDC, qui prend comme unique paramètre le contexte de périphérique à libérer.

Avant de commencer les cas particuliers, un petit cours sur les couleurs (utilisées partout) s'impose :

Les couleurs

Les couleurs sont gérées différemment de la logique actuelle. Je pense en particulier aux couleurs standards comme le RGB, ou Red Green Blue, avec la teneur de chaque couleur primaire variant entre 0 et 255 : en winAPI, les couleurs et motifs sont gérées par Brosses, ou Brushes, et donc HBRUSH.

D'accord, mais comment passer d'une couleur RGB à une Brush ?

Eh bien, Microsoft pense à nous. ;) Nous avons donc à notre disposition CreateSolidBrush prenant comme seul paramètre la valeur hexadécimale de la couleur, ou une variable COLORREF. Pour transformer la couleur RGB en valeur COLORREF afin de la passer en paramètre à CreateSolidBrush, nous pouvons utiliser la macro RGB. Au final, la syntaxe à utiliser afin de récupérer une brush de couleur RGB est la suivante :

const HBRUSH rouge = CreateSolidBrush(RGB(255,0,0));

Les valeurs de chaque couleur primaire se trouvent dans l'ordre des lettres de la macro.

Mais les brosses peuvent aussi être utilisées pour, par exemple, changer de motif. Pour cela, msdn nous propose plusieurs fonctions, parmi lesquelles (à titre d'exemple) CreateHatchBrush, permettant de créer une brosse de motif de pointillés, traits ou autres par le passage du type de motif en premier paramètre, et de sa couleur en deuxième.

Où l'intégrer ?

Tous les dessins peuvent être effectués n'importe où dans le code en récupérant un DC. Seulement, dans le cas d'une superposition d'une autre fenêtre sur celle-ci, tous les dessins se retrouvent effacés. Afin de le contrer, nous devons utiliser un message envoyé par le système quand la fenêtre a besoin d'être redessinée : WM_PAINT.

:( Un scintillement désagréable subsiste...

Exact, la cause en est que les dessins sont alors entièrement redessinés, même s'ils sont toujours visibles. Pour y remédier, il est préférable d'utiliser la fonction BeginPaint à la place de GetDC ; même si elle prend le même paramètre (avec en plus un deuxième : un pointeur sur une structure PAINTSTRUCT pour le stockage... pas importante pour nous) et renvoie aussi un HDC, elle permet de ne redessiner que le strict nécessaire.

N'oubliez pas alors d'utiliser EndPaint, qui prend les mêmes paramètres que BeginPaint et permet d'arrêter le dessin. Elle a en plus le même effet que ReleaseDC.

N'oubliez pas ce que vous venez d'apprendre afin de l'appliquer à ce qui suit.
Rédacteur : Mg++

Le texte

Avant de l'afficher, une personnalisation du texte peut être exécutée (police, couleur).

Personnalisation du texte

Si vous ne savez pas encore ce que signifie le mot fonte, vous devez alors savoir qu'il s'agit d'un modèle d'écriture pour du texte. Pour vous faire une idée, "Times New Roman", "Arial", "Arial Black", etc... sont des fontes (connues qui plus est).
Si vous n'avez toujours pas compris, des fontes sont des polices de caractères :D .

Afin de pouvoir en utiliser lors de fonctions d'affichage de texte, nous devons récupérer un handle de fonte, ou HFONT. La récupération est semblable aux deux précédentes fonctions, et peut être effectuée grâce à CreateFont ou CreateFontIndirect. Comme CreateFont possède un prototype long et détaillé, je préfère présenter l'autre, qui passe indirectement (d'où son nom) par une structure détaillant les spécificités de la police (souligné, gras, italique, police, taille etc...) : LOGFONT.

Avant toute utilisation, certaines structures doivent être remises à zéro : ZeroMemory s'en occupe. Il faut lui passer pour son premier paramètre un pointeur de la structure ciblée, et en deuxième sa taille, donnée par sizeof.

LOGFONT, faisant partie de ce type de structures, doit être initialisée à zéro.
Ensuite, vous pouvez :

  • Choisir la police à utiliser en copiant le nom de la police entre guillemets dans le champ lfFaceName de votre structure LOGFONT. Exemple :

LOGFONT strctLogfont;
ZeroMemory(&structLogfont, sizeof(LOGFONT));
strcpy(structLogfont, "Arial");

  • Régler la taille de la fonte en définissant le champ lfHeight de la structure (en pixels). Exemple :

structLogfont.lfHeight = 32;

  • Choisir de souligner ou barrer le texte en réglant les champs lfUnderline ou lfStrikeOut à TRUE. Exemple :

structLogfont.lfUnderline = TRUE

  • Régler la grosseur du texte en choisissant une valeur pour le champ lfWeight entre 0 et 900 (par pas de 100, il existe des constantes, comme FW_BOLD [gras] à 700). Exemple :

structLogfont.lfWeight = FW_BOLD;

Plus de précisions sur cette structure seront présentes dans la documentation ci-jointe.

Une fois la structure définie, vous n'avez plus qu'à passer l'adresse de votre structure au seul paramètre possible de CreateFontIndirect, qui s'occupe de vous retourner le handle de fonte que vous devez récupérer. Exemple :

fonte = CreateFontIndirect(&structLogfont);

Affichage de texte

L'affichage du texte à l'écran s'exerce grâce à :

BOOL TextOut (HDC hdc, int nXStart, int nYStart, LPCTSTR lpString, int cbString);

  • Le premier paramètre désigne le DC courant, dans lequel va être dessiné le texte :

HDC hdc

  • Le deuxième désigne à quelle position d'abscisse le texte va commencer à être dessiné :

int nXStart

  • Le troisième a le même effet que précédemment, mais en ordonnée :

int nYStart

  • Le quatrième désigne la chaîne de caractères à afficher :

LPCTSTR lpString

  • Le dernier paramètre désigne le nombre de caractères à afficher (généralement le strlen de la chaîne, mais dans le cas où le nombre donné y est inférieur, la chaîne affichée sera tronquée) :

int cbString

Pour aller plus loin

Vous pouvez :

  • Rendre le fond du texte transparent en utilisant SetBkMode, prenant comme premier caractère le DC du texte, et en deuxième le mode de remplissage du fond (donc ici TRANSPARENT).
  • Appliquer une couleur au texte avec SetTextColor, prenant comme premier paramètre le DC du texte, et comme deuxième sa couleur (sous la forme d'une structure COLORREF).

Code d'exemple

En guise d'exemple, la fonction ci-dessous affiche la chaîne contenue dans chaine, avec les styles spécifiés en arguments, dans la fenêtre présente en argument n°1 :

void dessineTexte (HWND fenetreCiblee, char *chaine, RECT dimensions, BOOL souligne, char *police, COLORREF couleur)
{
//Déclarations préalables
LOGFONT structFonte;
PAINTSTRUCT ps;
HFONT fonte;
HDC dc;
//Remplissage de la LOGFONT
ZeroMemory(&structFonte, sizeof(LOGFONT));
strcpy(structFonte.lfFaceName, police);
structFonte.lfHeight = dimensions.top-dimensions.bottom;
structFonte.lfWidth = 400;
structFonte.lfUnderline = souligne;

//Création de la fonte à partir de structFonte dans fonte
fonte = CreateFontIndirect(&structFonte);

//Récupération de la surface de dessin dans dc
dc = BeginPaint(fenetreCiblee, &ps);

//Permet au texte d'avoir un fond transparent
SetBkMode(dc, TRANSPARENT);
//Applique la fonte au dc de texte
SelectObject(dc, fonte);
//Applique la couleur de texte au dc
SetTextColor(dc, couleur);
//Affichage du texte
TextOut(dc, dimensions.left, dimensions.top, chaine, strlen(chaine));
//Libération de la surface et du dc
EndPaint(fenetreCiblee, &ps);
return;
}

Vous avez sûrement noté la présence d'une structure RECT que vous ne connaissez pas.

  • Son champ left désigne l'abscisse du coin supérieur gauche de la surface spécifiée par le RECT.
  • Son champ top désigne son ordonnée.
  • Son champ right désigne l'abscisse du coin inférieur droit de la surface spécifiée par le RECT.
  • Son champ bottom désigne son ordonnée.

Grâce à de petits calculs, je peux alors déterminer la hauteur du texte à afficher. Vous pouvez en inventer un pour la largeur, je ne vous cache pas que j'en ai la flegme :-° .
Rédacteur : Mg++

Les formes géométriques

Afin de créer des formes géométriques, vous avez besoin d'un crayon dans la vie réelle, non ? Eh bien en winAPI, c'est pareil.

Cours

Les crayons

Bon ! Maintenant que vous avez compris le truc (et que vous avez quelques notions de dessin depuis la maternelle :p ), que vous savez donc que le dessin se fait par outils facilement représentables visuellement, je vais vous parler des crayons. Comme vous le savez, un crayon peut être caractérisé par :

  • son motif (la manière dont vous vous en servez)
  • sa taille
  • sa couleur

Ça tombe bien, ce sont exactement les paramètres de CreatePen (et dans l'ordre en plus, quelle chance :-° ). Celle-ci renvoie un handle sur un crayon, ou HPEN.

  • Son motif est spécifié par l'envoi de constantes int au premier de ses paramètres (fnPenStyle), qui peuvent être PS_SOLID (pas de motifs), PS_DASH (tirets), PS_DOTS (pointillés) et j'en passe...
  • Sa taille est spécifiée par le 2ème paramètre, Width (un int) en pixels.
  • Sa couleur est déterminée par le dernier paramètre, crColor, dont le type est encore un COLORREF. La macro RGB est alors encore de vigueur ici.
Les différentes formes

Maintenant que vous avez de quoi dessiner, je vais vous fournir des fonctions de dessin permettant de reproduire, avec le DC courant, une forme géométrique :

  • pour faire un rectangle :

BOOL Rectangle(HDC hdc,int nLeftRect, int nTopRect, int nRightRect, int nBottomRect);

(où hdc désigne le dc courant dans lequel va être dessiné le rectangle, et où les 4 paramètres suivants ont la même désignation que dans la structure RECT (cf fin "Le texte").

  • Pour faire une ellipse :

BOOL Ellipse(HDC hdc, int nLeftRect, int nTopRect, int nRightRect, int nBottomRect);

(Ses paramètres ont la même désignation que pour Rectangle.)

  • Pour faire une ligne, il faut faire une combinaison de :

BOOL MoveToEx(HDC hdc, int X, int Y, LPPOINT lpPoint);

Cela permet de déplacer le curseur virtuel dans le dc désigné par le premier paramètre aux coordonnées (X ; Y). Cette fonction écrit les anciennes coordonnées du curseur virtuel dans lpPoint (un pointeur de type POINT est un structure toute bête ne possédant que deux champs : x et y).

Si NULL est passé à ce paramètre, la fonction ne renvoie pas l'ancienne position.

BOOL LineTo(HDC hdc, int nXEnd, int nYEnd);

Ce qui a pour rôle de tracer une ligne (affectée par les objets potentiellement sélectionnés) entre le curseur virtuel et (nXEnd ; nYEnd).

D'autres fonctions de dessin seront peut être présentées : il s'agit des principales.

Codes d'exemples

Voici un ensemble de fonctions permettant de dessiner un rectangle, une ellipse ou une ligne, avec les options passées en paramètre :

  • Rectangle :

void dessineRectangle (HWND fenetreCiblee, const RECT dimensions, HPEN crayon, HBRUSH brosse)
{
//Déclarations préalables + demande de surface de dessin
PAINTSTRUCT ps;
HDC dc = BeginPaint(fenetreCiblee, &ps);

//Dessine le contour avec le crayon donné
SelectObject(dc, crayon);
//Peint le fond du rectangle avec la brosse donnée
SelectObject(dc, brosse);

//Dessine le rectangle aux positions données
Rectangle(dc, dimensions.left, dimensions.top, dimensions.right, dimensions.bottom);

//Libération de la surface et fin du dessin
EndPaint(fenetreCiblee, &ps);
return;
}

  • Ellipse :

void dessineEllipse (HWND fenetreCiblee, const RECT dimensions, HPEN crayon, HBRUSH brosse)
{
//Déclarations préalables + demande de surface de dessin
PAINTSTRUCT ps;
HDC dc = BeginPaint(fenetreCiblee, &ps);

//Dessine le contour avec le crayon donné
SelectObject(dc, crayon);
//Peint le fond du rectangle avec la brosse donnée
SelectObject(dc, brosse);

//Dessine l'ellipse aux positions données
Ellipse(dc, dimensions.left, dimensions.top, dimensions.right, dimensions.bottom);

//Libération de la surface et fin du dessin
EndPaint(fenetreCiblee, &ps);
return;
}

  • Ligne :

void dessineLigne (HWND fenetreCiblee, const RECT dimensions, HPEN crayon)
{
//Déclarations préalables + récupération de la surface de dessin
PAINTSTRUCT ps;
HDC dc = BeginPaint(fenetreCiblee, &ps);
//Application du crayon sur le dc
SelectObject(dc, crayon);
//Dessin de la ligne
MoveToEx(dc, dimensions.left, dimensions.top, NULL);
LineTo(dc, dimensions.right, dimensions.bottom);
//Libération de la surface + fin du dessin
EndPaint(fenetreCiblee, &ps);
return;
}

Rédacteur : Mg++

Les images

Les images affichables en WinAPI sont généralement de type Bitmap. Pour les afficher, vous disposez de deux moyens : par ressources et en passant par un contrôle STATIC, ou par les contextes de périphériques. Voici donc les méthodes disponibles :

Affichage par contrôle STATIC

Cette méthode est la plus simple à mettre en place, et permet de récupérer des notifications à l'égard du contrôle STATIC. Cependant, c'est la plus gourmande en ressources, et n'est donc pas recommandée si vous n'avez aucune utilité des notifications.

Chargement du bitmap

Tout ce que vous avez à faire, c'est intégrer le bitmap en ressources en utilisant cette syntaxe :

img1 BITMAP "Images/bitmap.bmp"

Création du STATIC bitmap

La création de ce type de static s'effectue simplement : contentez-vous de créer un static "normal", de mettre l'ID du bitmap entre guillemets en guise de nom de fenêtre (2ème argument), et d'ajouter le style SS_BITMAP aux autres flag. Les dimensions (6ème et 7ème paramètres) peuvent être mises à 0 pour conserver la taille originelle de l'image.

Si votre contrôle est situé dans un template, la procédure à suivre est la même.

Affichage par contextes de périphériques

C'est la méthode à suivre si vous préférez ne pas utiliser beaucoup les ressources système. Partez pour commencer d'un code simple comme celui-ci :

void afficheBitmap(HWND fenetreCiblee, char *chemin)
{
HBITMAP bitmap;
HDC hDC;

//Chargement du bitmap
hDC=GetDC(fenetreCiblee);

//Affichage du bitmap
DeleteObject(bitmap);
ReleaseDC(fenetreCiblee,hDC);
}

Si vous avez votre bitmap en ressource, rien de plus simple pour le chargement : LoadBitmap, prenant comme premier paramètre l'instance actuelle, et comme deuxième, son ID entre guillemets, retourne un handle de bitmap directement manipulable. Dans le cas contraire, nous devons utiliser :

HANDLE LoadImage(
HINSTANCE hinst,
LPCTSTR lpszName,
UINT uType,
int cxDesired,
int cyDesired,
UINT fuLoad
);

Dont les arguments sont :

  • l'instance actuelle.
  • Le chemin de l'image.
  • Le type de l'image. Ici IMAGE_BITMAP, mais peut-être aussi IMAGE_ICON ou IMAGE_CURSOR.
  • La largeur voulue de l'image. On utilise ici 0 pour tout prendre.
  • Idem, mais pour la hauteur.
  • Le mode de chargement. L'énumération de toutes ses valeurs possibles étant redondante, je vous précise juste que nous le mettrons à LR_LOADFROMFILE pour le charger à partir du disque.

Donc, dans notre cas ce bout de code ressemblerait alors à ceci :

bitmap = (HBITMAP)LoadImage(NULL,"image.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE);

Ensuite, en ce qui concerne l'affichage, vous disposez de deux méthodes possibles, mais la deuxième vous sera présentée plus tard dans une autre de ses possibilités. Voici donc :

DrawState

Elle a comme prototype :

BOOL DrawState(HDC hdc, HBRUSH hbr, DRAWSTATEPROC lpOutputFunc, LPARAM lData, WPARAM wData, int x, int y, int cx, int cy, UINT fuFlags);

Cette fonction permet d'afficher l'image avec certains effets visuels (masques, etc.). Comme ce n'est pas ce que nous voulons faire ici, je passerai sur les paramètres inutiles pour nous, il vous incombera de les mettre à NULL (avec si nécessaire, un cast).

  • hdc désigne le dc courant dans lequel va être affichée l'image.
  • lData désigne le HBITMAP à afficher (un cast en long sera peut être nécessaire).
  • Comme d'habitude, x et y déterminent la position du coin supérieur gauche de l'image, collée dans le dc courant, alors que cx et cy représentent ses dimensions (donc mises à 0 pour conserver la taille originelle).
  • fuFlags désigne le type de l'image à afficher : DST_BITMAP, DST_ICON etc..

Alors, dans notre cas :

DrawState(dc,NULL,NULL,(long)bitmap,NULL,10,10,0,0,DST_BITMAP);

Code complet

Voici donc le code complet. Si vous avez votre image en ressources, inversez les commentaires et le code approprié :

case WM_PAINT :
{
HBITMAP bitmap;
HDC dc;
PAINTSTRUCT ps;
bitmap=LoadImage(NULL,"image.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
dc = BeginPaint(fenetrePrincipale, &ps);
DrawState(dc,NULL,NULL,(long)bitmap,NULL,10,10,0,0,DST_BITMAP);
EndPaint(fenetrePrincipale, &ps);
DeleteObject(bitmap);
return 0;
}

Vous pouvez en faire une fonction si vous vous sentez d'attaque ;) .

Un approfondissement de ce chapitre avec des techniques avancées vous permettant de faire plus de choses vous sera présenté plus tard dans le cours :) .

Rédacteur : Mg++

Je pense que vous avez maintenant assez de bases pour .... oui, un TP ! :D

Euh ... :waw:

Pas de panique, si vous avez bien compris, rien ne sera difficile. Il s'agira probablement d'un lecteur audio sous Fmod ;)


TP Un lecteur audio.htm

TP : UN LECTEUR AUDIO

But

Votre mission, si vous l'acceptez, sera de créer un petit lecteur audio comprenant les fonctions suivantes :

  • Affichage des informations de la musique courrament jouée à l'écran, ainsi que les temps (écoulé/total).
  • Fonctions play / pause / stop.
  • Possibilité de parcourir le disque à la recherche d'une musique (pour le moment une seule, cela sera plus simple pour vous).
  • Présence d'un seeker, en fait un slider, permettant de rechercher un endroit particulier dans la musique (vous le connaissez forcément ;) ).

C'est pour l'instant tout ce que je vous propose, cela pour ne pas vous compliquer la vie en guise de premier TP WinAPI. Des propositions d'améliorations vous seront données en fin de tuto, avec quelques éléments utiles pour leur conception.

Cependant si vous attendez, certaines améliorations en suspens trouveront leur solution dans la suite du cours.

Je vous propose l'organisation suivante, mais libre à vous de faire la vôtre. Ce sera votre lecteur après tout ^^ :

(N'ayez pas peur, je l'ai fait sous Paint :-° .)

Donc, avec cette organisation, le contrôle sur la musique se fera à partir du menu Music (qui possèdera donc les entrées-commandes Play / Pause, et Stop), et le contrôle du player se fera à partir du menu File, qui contiendra donc les entrées-commandes Browse, et Quit.

Maintenant que vous connaissez assez de bases, je me permets de reprendre mon cher anglais. :p

Par conséquent, l'intérieur de la fenêtre ne comportera que les informations générales, et un contrôle de type slider permettant de "seeker" la musique.
Rédacteur : Mg++

Nécessaire

Afin de réaliser le TP, vous avez obligatoirement besoin d'un gestionnaire du son et de la musique. A cet effet, j'ai choisi FMOD, puisqu'il a déjà été étudié dans le tuto de M@teo21.

Si jamais il y a des choses que vous ne comprenez pas (concernant FMOD), ou si vous voulez améliorer le TP, je vous conseille d'utiliser la documentation de FSOUND .

De plus, une bonne connaissance du tuto vous sera nécessaire.

Pourquoi nous avoir appris tant de choses si seuls le slider et les menus sont utilisés, ainsi que l'affichage du texte ?

Ce TP est une occasion de vous entraîner. Ce que je vous propose est le strict minimum à son fonctionnement : si vous voulez l'améliorer (et ce sera sûrement le cas, comme je l'espère ;) ), vous aurez besoin de toutes les connaissances acquises : listbox et dialogbox pour la playlist, boutons, textes et j'en passe...
Rédacteur : Mg++

Pistes

Vous aurez sûrement besoin de quelques pistes afin de le créer... je pense notamment au moyen de parcourir le disque dur à la recherche des musiques ;) . Je vais donc vous les détailler ci-après, afin de vous aider le plus possible.

Voici donc les fameuses pistes (en vrac :-° ) .

Le timer

Afin de changer les informations à chaque seconde, (pour le temps, le slider etc...) vous devrez utiliser un timer. Ceux-ci sont un peu différents de ceux de la SDL : un timer, en WinAPI, envoie à la fenêtre parent de celui-ci une notification toutes les X millisecondes. Très pratiques, ils permettent d'exécuter un bloc d'instructions à chaque intervalle de temps. De plus, ils n'ont pas particulièrement besoin de callback, et sont généralement utilisés sans. Vous devrez donc, à la création de votre fenêtre, initialiser le timer qui, par défaut, n'est pas présent (logique), par un appel à la fonction SetTimer.

  • Son premier argument désigne le handle de la fenêtre parent du timer, qui va recevoir la notification régulière.
  • Son deuxième argument désigne son ID permettant de le distinguer des éventuels autres timer.
  • Son troisième argument désigne l'intervalle de temps, en millisecondes, entre chaque notification.
  • Son dernier argument désigne son éventuelle fonction callback associée, de type TIMERPROC (non nécessaire, et souvent mis à NULL).

Une fois le timer lancé, la fenêtre parent de celui-ci recevra la notification WM_TIMER à chaque intervalle de temps.
Pour arrêter le timer, utilisez KillTimer prenant comme premier argument le handle de la fenêtre parent, et en second l'ID du timer.

L'affichage des textes

L'affichage des textes en utilisant le dessin peut compliquer les choses inutilement. Je vous propose donc d'utiliser une méthode très pratique, qui consiste à créer des contrôles static (avec les positions et dimensions nécessaires bien sûr) pour chaque zone d'information (nom de la musique, son état, et son temps), avec un flag adapté à la zone (pour le temps : SS_RIGHT ; pour le nom : SS_CENTER ; pour le status : SS_LEFT). Et enfin, d'exécuter quand vous voulez changer leur texte SetWindowText. Cette fonction, prenant comme premier paramètre le handle de la fenêtre (donc du static ici), et comme deuxième, le texte à afficher, changera les textes des static en les justifiant à la position que vous avez spécifiée.

Si vous changez la couleur de fond de la fenêtre (vous savez, avec le champ hbrBackground), vous devrez changer le fond des static, et rendre le fond de leurs textes transparents. Pour cela, à la réception de WM_CTLCOLORSTATIC, récupérez le HDC contenu dans le wParam, rendez le texte transparent avec celui-ci, et enfin retournez une brosse (avec CreateSolidbrush) pour colorer le static.

La sélection de musique

En ce qui concerne la fonction Browse (ou parcourir), la manière la plus efficace reste la boîte de dialogue d'ouverture. Vous la connaissez, n'est-ce pas ? C'est ce petit explorateur, vous permettant de sélectionner ce que vous voulez ouvrir :

Pour la faire apparaître, nous utiliserons la fonction GetOpenFileName. Cette dernière, qui prend comme seul paramètre une variable de type OPENFILENAME, retourne TRUE si l'utilisateur a cliqué sur "Open", ou FALSE sur "Cancel". (En gros, vous ne traiterez que le TRUE.) La structure OPENFILENAME n'a pas le même rôle que PAINTSTRUCT : vous devrez la remplir. Pour cela, je vais vous décrire les champs qui nous sont utiles.

Vous devez au préalable la mettre à zéro comme les autres structures remplies.

  • Le champ lStructSize doit récupérer la taille de la structure. (Utilisez donc un sizeof.)
  • Le champ hwndOwner récupère le handle de la fenêtre parent. (Donc celle du player.)
  • Le champ lpstrFile récupère une chaîne de caractères qui va recevoir le chemin de la musique sélectionnée par l'utilisateur, lorsque la fonction retourne.

Je vous conseille de donner la taille MAX_PATH à votre chaîne de caractères, puisque c'est la taille maximale d'un chemin de fichier.

  • Le champ nMaxFile récupère la taille maximale, en caractères, acceptée par la chaîne de caractères pointée par lpstrFile (en l'occurrence, MAX_PATH).
  • Le champ lpstrFilter est le plus dur à comprendre pour un débutant. Il s'agit des filtres utilisés : ce paramètre désigne les filtres possibles (description affichée à l'écran) avec leur extension filtrée. Pour cela, Microsoft a inventé un format de chaîne de caractères (appelé dans le jargon multistring), composée de plusieurs parties (d'autres chaînes, en fait). Celles-ci sont séparées par des caractères NULL, \0. Les parties fonctionnent par paires : la première partie d'une paire désigne le descriptif affiché à l'utilisateur (il aura le choix entre tous les descriptifs) ; la deuxième, la ou les extensions filtrées (sous la forme *.extension). Dans le cas de plusieurs filtres, ils doivent être séparés par des points-virgules. Comme celui-ci est difficile à comprendre, je vous donne sa valeur : truc.lpstrFilter = "Audio File\0*.mp3;*.wav;*.wma;*.ogg\0\0";

La dernière partie de string doit posséder deux caractères NULL consécutifs.

  • Le champ nFilterIndex doit toujours être à 1.
  • Le champ Flags désigne les flag à utiliser : ici, nous utiliserons OFN_PATHMUSTEXIST et OFN_FILEMUSTEXIST. Ceux-ci permettent de spécifier que le fichier et son chemin doivent exister (pour éviter les bugs).

Une fois ceci fait, vous devrez passer l'adresse de la variable OPENFILENAME remplie à GetOpenFileName. L'appel de cette fonction suffit à afficher la boîte de dialogue, et à remplir le champ pointé par lpstrFile dès que le bouton "Ouvrir" est cliqué.

Le nom de la musique

Afin de trouver le nom de la musique, je vous propose une solution toute bête, en attendant la gestion des tags : utilisez strrchr sur le chemin de la musique avec le caractère \ (doublé dans le code). Elle retournera alors la fin du chemin, ou la musique elle- même.

Le module de musiques

En ce qui concerne le module de son, fsound, vous aurez besoin de quelques fonctions pour coder votre lecteur. Voici les nécessaires :

  • FSOUND_Init : initialise le module fsound.
  • FSOUND_Close : ferme le module fsound.
  • FSOUND_Stream_Open : ouvre une musique.
  • FSOUND_Stream_Play : joue une musique.

Jusqu'ici, vous les connaissez toutes, du tuto de M@teo21. Mais les suivantes n'y sont pas expliquées, vous aurez donc besoin de vous rendre sur la doc de fsound pour des informations les concernant.

  • FSOUND_GetPaused : informe de l'état de la pause.
  • FSOUND_SetPaused : change l'état de la pause.
  • FSOUND_Stream_Stop : stoppe la musique.
  • FSOUND_Stream_GetLengthMs : récupère le temps total de la musique.
  • FSOUND_Stream_SetTime : définit le temps écoulé / actuel de la musique.
  • FSOUND_Stream_GetTime : récupère le temps écoulé/actuel de la musique

Fin des pistes :p

Normalement, avec ces pistes et votre bagage intellectuel acquis durant ce tuto, vous pourriez y arriver sans aide.

Vous devez avoir vu au préalable parmi les contrôles : le static et le seeker. En outre, vous devez connaître toutes les bases, mais je suis sûr que vous les avez déjà. ;)

Allez, pour vous faire une idée du programme final :

Si vous n'y arrivez pas, n'hésitez pas à poster dans le forum du SDZ.

Et maintenant, à vous de jouer ! :pirate:

Bonne chance ! :)
Rédacteur : Mg++

Correction

J'espère que vous vous êtes bien débrouillés. ^^ Dans le cas contraire (ou pour voir comment un autre aurait fait, tout simplement), voici une archive contenant le projet complet (.cbp et codes sources) pour vous faire les dents :magicien: :

Télécharger l'archive du projet !
Si jamais mon site est indisponible ou si le lien est rompu d'une quelconque manière, pour raison d'Etat par exemple, voici une recopie du code source :ninja: :

  • Resource.rc

/**************************************************
Nom du fichier : Resource.rc
Appartenance au projet : TP d'un lecteur audio pour le SDZ
Créateur : kidpaddle2

Rôle du fichier : Contient le template du menu
**********************************************/
#include <windows.h>
#include "Constants.h"
ID_MENU MENU
BEGIN
POPUP "File"
BEGIN
MENUITEM "Browse", ID_B_BROWSE
MENUITEM SEPARATOR
MENUITEM "Quit", ID_B_QUIT
END
POPUP "Music"
BEGIN
MENUITEM "Play/Pause", ID_B_PLAYPAUSE
MENUITEM "Stop", ID_B_STOP
END
END

  • Constants.h

/*************************************************************************
Nom du fichier : Constants.h
Appartenance au projet : TP d'un lecteur audio pour le SDZ
Créateur : kidpaddle2
Rôle du fichier : Définir les constantes nécessaires aux manipulations
de contrôles (principalement des ID)
**************************************************************************/
///Protection contre les inclusions multiples
#ifndef CONSTANTES_H
#define CONSTANTES_H
///Définition des constantes
#define ID_B_PLAYPAUSE 0
#define ID_B_STOP 1
#define ID_B_BROWSE 2
#define ID_B_QUIT 3
///Fin de la protection
#endif

  • Functions.h

/*************************************************************************
Nom du fichier : Functions.h
Appartenance au projet : TP d'un lecteur audio pour le SDZ
Créateur : kidpaddle2
Rôle du fichier : contient les prototypes des fonctions
**************************************************************************/
///Protection contre les inclusions multiples
#ifndef FUNCTIONS_H
#define FUNCTIONS_H
///Includes nécessaires
#include <windows.h>
#include <commctrl.h>
#include "Music.h"
///Prototypes des fonctions
void loadMusic(HWND, Music*);
void createStatics (HWND[], HWND, HINSTANCE);
void adaptSeeker (HWND, const Music);
///Fin de la protection
#endif

  • Functions.cpp

/*************************************************************************
Nom du fichier : Functions.cpp
Appartenance au projet : TP d'un lecteur audio pour le SDZ
Créateur : kidpaddle2
Rôle du fichier : définir les fonctions nécessaires au fonctionnement
du player
**************************************************************************/
///Includes
#include "Functions.h"
/** Fonction : loadMusic
Paramètre 1 : Fenêtre parent du contrôle
Paramètre 2 : adresse de l'objet "Music" pour charger la musique
Rôle : Charger la musique grâce à une boîte de dialogue d'ouverture,
inscrire le chemin et nom, et déterminer le temps total de la
musique**/
void loadMusic (HWND parentWindow, Music *musicToLoad)
{
//Structure nécessaire à la boîte de dialogue d'ouverture
OPENFILENAME toGetFileName;
//Variable qui va recevoir le chemin de la musique
char filePath[MAX_PATH] = "";
//Remplissage de la structure
ZeroMemory(&toGetFileName, sizeof(OPENFILENAME));
toGetFileName.lStructSize = sizeof(OPENFILENAME);
toGetFileName.hwndOwner = parentWindow;
toGetFileName.lpstrFile = filePath;
toGetFileName.nMaxFile = MAX_PATH;
//Avec un filtre de fichiers audio
toGetFileName.lpstrFilter = "Audio File\0*.mp3;*.wav;*.ogg;*.wma\0\0";
toGetFileName.nFilterIndex = 1;
toGetFileName.Flags = OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST;
//Si l'utilisateur clique sur "Ouvrir"
if(GetOpenFileName(&toGetFileName) == TRUE)
{
//Copier le chemin récupéré dans le chemin de la musique
strcpy(musicToLoad->path, filePath);
//Inscrire le nom de la musique
strcpy(musicToLoad->name, strrchr(musicToLoad->path, '\\'));
//Si la musique est changée, on ferme la précédente
FSOUND_Stream_Close(musicToLoad->stream);
//Ouverture de la musique
musicToLoad->stream = FSOUND_Stream_Open(musicToLoad->path, 0, 0, 0);
//Récupération du temps total
musicToLoad->totalTime = FSOUND_Stream_GetLengthMs(musicToLoad->stream)/1000;
}
return;
}
/** Fonction : createStatics
Paramètre 1 : tableau de statics à créer
Paramètre 2 : fenêtre parent
Paramètre 3 : Instance actuelle
Rôle : Créer les statics montrant les infos sur la musique**/
void createStatics (HWND statics[], HWND parentWindow, HINSTANCE instance)
{
//Création du premier static (nom de la musique)
statics[0] = CreateWindow("STATIC",
"No musics loaded.",
WS_CHILD | WS_VISIBLE | SS_CENTER | SS_NOPREFIX,
10, 11, 370, 15,
parentWindow,
(HMENU)NULL,
instance,
NULL);
//Création du deuxième static (status de la musique)
statics[1] = CreateWindow("STATIC",
"Currently idle.",
WS_CHILD | WS_VISIBLE | SS_LEFT | SS_NOPREFIX,
10, 55, 100, 15,
parentWindow,
(HMENU)NULL,
instance,
NULL);
//Création du troisième static (temps de la musique)
statics[2] = CreateWindow("STATIC",
"",
WS_CHILD | WS_VISIBLE | SS_RIGHT | SS_NOPREFIX,
240, 55, 140, 15,
parentWindow,
(HMENU)NULL,
instance,
NULL);
return;
}
/** Fonction : adaptSeeker
Paramètre 1 : seeker
Paramètre 2 : objet musique chargé
Rôle : Adapter les marges du seeker en fonction du temps total de la
musique **/
void adaptSeeker (HWND seeker, const Music music)
{
//Définit la marge supérieure du seeker au temps total de la musique
SendMessage(seeker, TBM_SETRANGE, FALSE, MAKELONG(0,music.totalTime));
return;
}

  • Music.h

#ifndef MUSIC_H
#define MUSIC_H
#include <stdio.h>
#include <fmod/fmod.h>
typedef enum Status
{
playing = 0, paused = 1, stopped = 2, idle = 3
}Status;
typedef struct st1
{
int elapsedTime;
int totalTime;
char allTimes[20];
char name[256];
char path[MAX_PATH];
FSOUND_STREAM *stream;
}Music;
#endif

  • main.cpp

/*************************************************************************
Nom du fichier : main.cpp
Appartenance au projet : TP d'un lecteur audio pour le SDZ
Créateur : kidpaddle2
Rôle du fichier : point d'entrée du programme et gestion des évènements
(callbacks)
**************************************************************************/
///Includes
#include <windows.h>
#include <fmod/fmod.h>
#include "Constants.h"
#include "Music.h"
#include "Functions.h"
///Instance actuelle (on en a besoin partout, donc on la déclare globale).
HINSTANCE instance;
///Prototype de la procédure callback du player
LRESULT CALLBACK playerProc(HWND, UINT, WPARAM, LPARAM);
///Winmain
int WinMain (HINSTANCE hThisInstance, HINSTANCE hPreviousInstance,
LPSTR lpCmdLine, int nFursterStill)
{
HWND player = NULL;
MSG message;
WNDCLASS playerClass;
//Remplissage de l'instance globale avec l'instance actuelle
instance = hThisInstance;
//Définition de la classe de fenêtre
playerClass.style = 0;
playerClass.lpfnWndProc = playerProc;
playerClass.cbClsExtra = 0;
playerClass.cbWndExtra = 0;
playerClass.hInstance = instance;
playerClass.hIcon = LoadIcon(NULL, IDI_APPLICATION);
playerClass.hCursor = LoadCursor(NULL, IDC_ARROW);
//Remarquez la brosse employée pour peindre le fond de la fenêtre
playerClass.hbrBackground = CreateSolidBrush(RGB(0,0,0));
//Le menu est associé
playerClass.lpszMenuName = "ID_MENU";
playerClass.lpszClassName = "pClass";
if(!RegisterClass(&playerClass))
return FALSE;
//Création de la fenêtre du player
player = CreateWindow("pClass", "Basic Music Player", WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, 400, 130,
NULL, NULL, hThisInstance, NULL);
if (!player) return FALSE;
//On l'affiche
ShowWindow(player, nFursterStill);
UpdateWindow(player);
//Boucle évènementielle
while (GetMessage(&message, NULL, 0, 0))
{
TranslateMessage(&message);
DispatchMessage(&message);
}
return message.wParam;
}
///Procédure callback de la fenêtre du player
LRESULT CALLBACK playerProc(HWND playerWindow, UINT message, WPARAM wParam, LPARAM lParam)
{
/*Variables déclarées statiques pour qu'elles soient toujours valides
tout au long du programme*/
static Music music = {0};
//Handles des 3 statics (pour les infos) et du seeker
static HWND infos[3] = {NULL}, seeker = NULL;
//Status
static Status status = idle;
switch (message)
{
case WM_CREATE:
//Création de tous les contrôles
createStatics(infos, playerWindow, instance);
seeker = CreateWindow((LPCTSTR)TRACKBAR_CLASS,
(LPCTSTR)"",
(DWORD)WS_CHILD|WS_VISIBLE | TBS_NOTICKS,
10, 30, 370, 20,
playerWindow,
(HMENU)NULL,
instance,
NULL);
//Initialisation de fsound
FSOUND_Init(44100, 32, 0);
//Lancement du timer nécessaire
SetTimer(playerWindow, 0, 1000, (TIMERPROC)NULL);
return 0;
case WM_COMMAND:
switch(LOWORD(wParam))
{
/*Si la commande "Quit" du menu est cliquée, on envoie WM_DESTROY à la fenêtre*/
case ID_B_QUIT:
SendMessage(playerWindow, WM_DESTROY, 0, 0);
break;
/*Si la commande "Browse" du menu est cliquée, on s'occupe de charger la musique*/
case ID_B_BROWSE:
//Donc on charge la musique (voir Functions.cpp)
loadMusic(playerWindow, &music);
/*On adapte les marges du seeker en conséquence (du temps total)*/
adaptSeeker(seeker, music);
//On met à jour le nom de la musique
SetWindowText(infos[0], music.name);
break;
//Si la commande "Play / Pause" du menu est cliquée et :...
case ID_B_PLAYPAUSE:
/*...si aucune musique n'est jouée, et que la pause n'est pas enclenchée*/
if(!FSOUND_IsPlaying(0) && !FSOUND_GetPaused(0))
//Alors on joue la musique chargée
FSOUND_Stream_Play(0, music.stream);
//...sinon si la pause est enclenchée
else if(FSOUND_GetPaused(0))
//On l'enlève
FSOUND_SetPaused(0, FALSE);
//...sinon si on est en pleine lecture
else if(FSOUND_IsPlaying(0))
//Alors on enclenche la pause
FSOUND_SetPaused(0, TRUE);
//...sinon on fait rien.
else
break;
break;
//Si la commande "Stop" du menu est cliquée...
case ID_B_STOP:
//...on stoppe la musique chargée
FSOUND_Stream_Stop(music.stream);
break;
}
return 0;
//Si le seeker est bougé...
case WM_HSCROLL:
//On trouve la position changée du seeker...
music.elapsedTime = SendMessage(seeker, TBM_GETPOS, 0, 0);
//... et on applique à la musique le temps demandé
FSOUND_Stream_SetTime(music.stream, music.elapsedTime*1000);
break;
//A chaque signal de timer...
case WM_TIMER:
//Et si la musique est jouée
if(FSOUND_IsPlaying(0))
{
/*Et si la pause est enclenchée, on rafraîchît le status en conséquence*/
if(FSOUND_GetPaused(0))
{
/* Seulement si ça ne l'est pas déjà */
if(status != paused)
{
SetWindowText(infos[1], "Paused.");
//Le status est changé
status = paused;
}
}
//Si la pause ne l'est pas
else
{
//On rafraîchit aussi le status en conséquence
/* Seulement si ça ne l'est pas déjà */
if(status != playing)
{
SetWindowText(infos[1], "Playing...");
//Le status est changé
status = playing;
}
//On récupère le temps actuel de la musique
music.elapsedTime = FSOUND_Stream_GetTime(music.stream)/1000;
/*On fabrique une chaine de caractères montrant l'avancée du temps*/
sprintf(music.allTimes,
"%d\' %d\" / %d\' %d\"",
music.elapsedTime/60,
music.elapsedTime%60,
music.totalTime/60,
music.totalTime%60);
//... et on l'affiche dans l'emplacement prévu
SetWindowText(infos[2], music.allTimes);
//Et enfin on met à jour le seeker
SendMessage(seeker, TBM_SETPOS, TRUE, music.elapsedTime);
}
}
//Si la musique n'est pas en train d'être jouée
else
{
/*On rafraîchit le status et l'avancée du temps en conséquence*/
/* Seulement si ça ne l'est pas déjà */
if((status != stopped) && (status != idle))
{
SetWindowText(infos[1], "Stopped.");
SetWindowText(infos[2], "");
//Et on met à zéro le seeker
SendMessage(seeker,TBM_SETPOS, TRUE, 0);
//Le status change
status = stopped;
}
}
return 0;
//Si le sontrôle demande à être recoloré...
case WM_CTLCOLORSTATIC:
{
//On récupère un DC dessus...
HDC textDC = (HDC)wParam;
SetTextColor(textDC, RGB(0,255,0));
//Qui permet de nous donner la main sur le texte à rendre transparent
SetBkMode(textDC, TRANSPARENT);
static HBRUSH brush = CreateSolidBrush(RGB(0,0,0)); /* Il vaut mieux la mettre en static pour éviter des bugs graphiques au chargement */

/*Et finalement on retourne une brosse pour colorer son fond. (la même que la fenêtre principale)*/
return (LRESULT)brush;
}
//Si on demande à quitter
case WM_DESTROY:
//On ferme fsound
FSOUND_Close();
//et on quitte...fini.
PostQuitMessage(0);
return 0;
default:
return DefWindowProc(playerWindow, message, wParam, lParam);
}
}

Rédacteur : Mg++

Améliorations

Ce lecteur est un bon début, mais il n'est pas parfait (nooon sans blague ? :p ). Je vous propose ici quelques idées d'améliorations avec, si besoin est, quelques astuces pour les concrétiser.

Sélection multiple

Vous pourriez permettre au lecteur de récupérer plusieurs musiques au lieu d'une dans la boîte de dialogue d'ouverture. Comme vous avez pu le voir, elle ne le permet pas. Pour cela, ajoutez à la liste de flags OFN_MULTISELECT, qui permettra de faire une sélection multiple. Mais... je ne vous en ai pas parlé car c'est un peu plus dur que pour la sélection unique. ;) En effet, vous ne disposez que d'une chaîne de sortie (lpszFile). Pas de panique, Microsoft est là. Dans le cas d'une sélection multiple, la chaîne se transforme alors en une multistring, dont je vous ai parlé plus haut. Le chemin du dossier où se trouvent les musiques, ainsi que chaque nom de musique sélectionnée qu'il précède, sont alors séparés par un caractère NULL, et le dernier caractère est doublé. Il va donc falloir que vous inventiez une fonction (je ne vais pas la donner, sinon ce n'est pas drôle :lol: ) permettant de découper la chaîne en un tableau de string, que vous stockerez alors. Voici alors son format, en guise de coup de pouce ^^ :

"C:\\Dossier1\\Dossier2\\Musique1.mp3\0Musique2.wav\0Musique3.ogg\0\0"

Gestion de plusieurs musiques

Après l'avoir intégré, un système de progression entre les musiques serait intéressant : l'ajout de 'Next', 'Previous' serait alors adapté, et un choix entre lecture normale ou aléatoire pourrait être ajouté.

Ajout d'une playlist

Une playlist pourrait alors être ajoutée, pour représenter visuellement les musiques chargées. Un double-clic sur une entrée de celle-ci lançerait alors la musique.

Fonctions habituelles

Après, pourraient être insérées les fonctions normales, tel que réglage du volume, etc.

Possibilités autres

D'autres possibilités seront vues plus en détail lors de la progression du cours, comme un skin élaboré dans une fenêtre non rectangulaire en utilisant les régions, la possibilité de minimiser l'application, etc.

Déjà, si vous intégrez toutes ces idées, cela prouvera que vous vous débrouillez bien avec le winAPI. Quoiqu'il arrive, gardez une organisation propre, et les ajouts se feront sans problème. :ange:
Rédacteur : Mg++

Et voilà, ce premier TP est fini :) Je vous retrouve après dans la suite du cours, et j'espère que ce TP vous a fait du bien. ;)
Rédacteur : kidpaddle2


Les événements.htm

LES ÉVÉNEMENTS

Vous avez jusqu'ici exclusivement travaillé avec des contrôles pour intéragir avec la fenêtre. Je vous propose ici de traiter manuellement les principaux événements du clavier et de la souris.

Ces événements sont captés sous forme de messages (notifications) par la fenêtre concernée, si elle a le focus.

Evénements "clavier"

Il y a trois événements vraiment utilisés :

  • WM_KEYDOWN
  • WM_CHAR
  • WM_KEYUP

Chacun de ces messages survient l'un après l'autre (dans l'ordre), à chaque fois qu'une touche est utilisée.

Si la touche enfoncée n'est pas un caractère, WM_CHAR n'est pas envoyé.

Voici un schéma résumant le tout :

Image utilisateur Schéma des messages générés tout au long de l'utilisation d'une touche

Comme vous pouvez le voir, WM_KEYDOWN survient lors de l'enfoncement d'une touche, WM_CHAR si cette touche désigne un caractère, et WM_KEYUP lors du relâchement de la touche.

Tous ces messages prennent comme paramètre :

  • WPARAM : code virtuel de la touche
  • LPARAM : informations de répétition, d'état de touche système etc.

Le paramètre LPARAM n'est souvent pas utilisé. Par contre, le premier permet de déterminer la touche qui a généré l'événement, à travers une correspondance code/touche, dont le tableau est disponible à l'adresse suivante (je n'ai pas eu le courage de tout retranscrire dans un tableau zCode, mais si une âme charitable pouvait le faire, je lui en serait reconnaissant ^^ ).

Pour les caractères (A->Z :p ), leur code virtuel n'est autre que leur valeur. Par exemple, le code virtuel de la touche a n'est autre que 'a' (ou 97 en ASCII), ou 'A' (ou 65 en ASCII), si la touche est majuscule. Naturellement, vous connaissez tout ça ;)

Il n'y a pas grand-chose à dire d'autre, donc un code complet devrait suffire à vous mettre en tête leur utilisation.

Les codeurs C++ pourraient alors avoir l'occasion d'utiliser le conteneur standard "map" pour la correspondance entre le nom de la touche, et son code virtuel.

Pour ceux que ça intéresse, vous pouvez récupérer l'état actuel d'une touche du clavier en utilisant GetKeyState(), prenant comme paramètre le code virtuel de la touche visée (attention, pour les caractères le paramètre passé doit être leur valeur ASCII). Son retour est (j'ai simplifié) inférieur à 0 si la touche est enfoncée.

Exemple

Voici donc un exemple de traitement des trois messages (non compilable), qui permet simplement de quitter le programme à l'appui de la touche "Echap", et d'ajouter à une string les éventuels caractères entrés.

//Soit wParam et lParam les WPARAM et LPARAM (normal ^^ )
//Soit buffer une instance de std::string
/* switch du MSG dans la callback de la fenêtre */
case WM_KEYDOWN:
//ou WM_KEYUP
switch(wParam)
{
case VK_ESCAPE:
PostQuitMessage(0);
break;
default:
break;
}
return 0;
case WM_CHAR:
buffer += (char)wParam;
return 0;

C'est tout bête, n'est-ce pas ?
Rédacteur : Mg++

Evénements "souris"

Les boutons

La souris génère deux messages consécutifs à l'appui d'un de ses bouton, chacun décliné en trois messages, selon le bouton concerné. La nomenclature de tels message est alors WM_BOUTONMESSAGE où :

  • BOUTON est l'identifiant du bouton ayant généré le message pouvant être :
  • L (bouton gauche)
  • R (bouton droit)
  • M (bouton du milieu)
  • MESSAGE le type d'événement, pouvant être :
  • BUTTONDOWN
  • BUTTONUP

On retrouve ici les suffixes -DOWN et -UP, montrant que durant l'utilisation d'un bouton, WM_(L, R ou M)BUTTONDOWN est envoyé quand il est enfoncé, et WM_(L, R ou M)BUTTONUP quand il est relâché.

Ces messages ont tous les mêmes paramètres WPARAM et LPARAM : le paramètre WPARAM contient un masque de bouton, c'est-à-dire le code virtuel de touches/boutons étant enfoncés lorsque l'événement survient (équivalent à la traduction d'appuis simultanés), dont les valeurs peuvent être :

  • MK_CONTROL : la touche Ctrl est enfoncée
  • MK_LBUTTON : le bouton gauche est enfoncé
  • MK_RBUTTON : Le bouton droit est enfoncé
  • MK_SHIFT : la touche SHIFT est enfoncée

Ces flags pouvant être combinés, vous pouvez retrouver la présence de l'un ou l'autre en utilisant l'opérateur &. Pour plus d'informations, reportez-vous au tutorial sur les flags .

Par ailleurs, le paramètre LPARAM contient les coordonnées du curseur lors de l'émission du message : le LOWORD contient son abscisse, et le HIWORD son ordonnée. Ces coordonnées peuvent êtres récupérées à l'aide des macros GET_X_LPARAM(LPARAM) (pour l'abscisse) et GET_Y_LPARAM(LPARAM) (pour l'ordonnée), ou encore MAKEPOINTS(LPARAM) (pour récupérer une structure POINTS).

Un autre message similaire (de même nomenclature et paramètres) existe, envoyé lors d'un double clic de la souris : WM_(L, R ou M)DBLCLK. Attention, pour pouvoir le recevoir votre fenêtre doit comporter le style CS_DBLCLKS.

La molette

L'événement WM_MOUSEWHEEL, généré lors de l'utilisation de la molette, possède les mêmes paramètres, excepté le fait que le masque de bouton expliqué plus haut est contenu par le HIWORD du WPARAM.

Pourquoi ?

J'y viens :p : le LOWORD est en fait utilisé par l'angle parcouru par la molette, défini à partir de la constante WHEEL_DELTA (valant 120, et correspondant en général à un "cran" de la molette). Si ce paramètre est positif, c'est que la molette a été tournée vers le "haut", ou à l'opposé de l'utilisateur. A l'inverse, une valeur négative traduit un mouvement vers le "bas", ou vers l'utilisateur.

Le déplacement

Nous avons vu jusqu'ici les événements des boutons, et de la molette de la souris. Mais qu'en est-il de son mouvement ?

Quand la souris est déplacée, le message WM_MOUSEMOVE est envoyée à la fenêtre située sous le curseur. Celui-ci (chance ! :p ) possède exactement les mêmes paramètres que les messages correspondant à l'utilisation des boutons de la souris, à savoir les boutons pressés simultanément, et les coordonnées du curseur.

Cet événement survenant à des intervalles très rapprochés, je ne vous conseille pas de le traiter avec de lourdes opérations, ou votre processeur en souffrira ;)

Divers

Vous pouvez récupérer la position de la souris à n'importe quel endroit de votre code, avec la fonction GetCursorPos(), prenant comme paramètre un pointeur de POINT. Vous l'aurez deviné, la fonction SetCursorPos() permettrait de définir la position du curseur, en prenant un POINT en paramètre.

Exemple

Voici un code récapitulatif tout simple, déduisant simplement la distance parcourue par le curseur (quand le bouton gauche de la souris est enfoncé), et par la molette (non compilable, comme d'habitude ;) ).

#include <math.h>
#define RADIUS (2*PI)
double linearDistance(POINT start, POINT end)
{
return sqrt(pow((end.x - start.x), 2) + pow((end.y - start.y), 2))
}
int DEG_TO_RAD(int deg)
{
return (deg*PI)/180
}
double angularDistance(int angle)
{
return abs(angle)*RADIUS;
}
/* Soit cursorDistance et wheelDistance des static double, représentant respectivement
la distance parcourue par le curseur et la molette (en pixels), ainsi que
BOOL lBtnDown l'état du bouton gauche de la souris. (TRUE pour
enfoncé, FALSE pour relâché) (FALSE par défaut) */

//WindowProc, switch MSG (avec LPARAM lParam et WPARAM wParam)
case WM_LBUTTONDOWN:
lBtnDown = TRUE;
return 0;

case WM_LBUTTONUP:
lBtnDown = FALSE;
return 0;
case WM_MOUSEMOVE:
{
if(lBtnDown)
{
static POINT old = {0,0};
POINT current;
current.x = GET_X_LPARAM(lParam);
current.y = GET_Y_LPARAM(lParam);
cursorDistance += linearDistance(old, current);
old = current;
}

return 0;
}
case WM_MOUSEWHEEL:
wheelDistance += angularDistance(DEG_TO_RAD(LOWORD(lParam)));
return 0;

DEG_TO_RAD devrait être précisé inline en C++, je n'aime pas utiliser des macros...

Rédacteur : Mg++

Ce fut une courte introduction aux événements principaux du clavier et de la souris. Un prochain chapitre sera dédié en partie aux événements système, comme le Drag And Drop.

Si vous comptez envoyer ces messages à une fenêtre, préférez PostMessage() à SendMessage(), puisqu'en général on n'attend pas de réponse de la part de la fenêtre visée (elle possède les mêmes paramètres que cette dernière).

Certains des messages necessitent des LPARAM/WPARAM contenant un LOWORD et un HIWORD. Dans ce cas, vous pouvez en créer en utilisant les macros MAKELPARAM(WORD, WORD) et MAKEWPARAM(WORD, WORD).


Esthétique avancée.htm

ESTHÉTIQUE AVANCÉE

Je suis certain que vous avez déjà éprouvé le désir de concevoir des applications ayant un design plus évolué à base de skins, formes fantaisistes etc., comme le proposent la plupart des logiciels sur la toile.

Eh bien, je vous propose ici de le réaliser ;) . Vous verrez donc ici comment tailler votre fenêtre comme bon vous semble. Pour cela, il est bien entendu necessaire que vous ayiez lu auparavant les autres chapitres de ce tutorial, et en particulier L'affichage (pour les images), et Les événements (surtout pour les tests relatifs à la souris, les boutons étant pour le moment incrustés au skin*).

Comme vous le savez tous à ce stade, l'API Windows est particulièrement tordue, ou tout du moins un tantinet compliquée lorsqu'il s'agit de dessin. Par conséquent, je ne vous exposerai pas ici les moyens de faire des boutons hovers (changeant d'état selon le stade de la souris). Vous le verrez plus tard, durant un chapitre du même thème, mais plus avancé.

Commençons tout d'abord par tailler fenêtre, non pas avec un burin, mais avec les régions.

Les régions

En premier lieu, il est nécessaire de définir ce qu'est une région. En fait, vous pouvez vous la modéliser comme un moule. Je ne sais pas si l'image vous interpelle, mais c'est comme les formes métalliques que vous appliquez sur un gâteau pour qu'il en prenne justement la forme ^^ .

L'usage de ces régions se définit en plusieurs étapes :

  • Création d'une région
  • Application de la région à une fenêtre.

Procédons dans l'ordre (tant qu'à faire :p ), et commençons dont par la création des régions proprement dite.

Important : veillez à donnner le style WS_POPUP à la fenêtre sur laquelle va être appliquée la région crée, car dans le cas contraire elle ne le sera pas (WS_OVERLAPPEDWINDOW est, rappelons-le, incompatible avec WS_POPUP. Vous devrez donc le remplacer par celui-ci).

Création d'une région

A l'instar des contrôles, une région possède un handle permettant de la manier. Celui-ci, dont le type est HRGN, contient les informations relatives à la région visée. Cette structure est remplie à partir de fonctions de création de région, autorisant un large éventail de formes possibles, à travers différentes fonctions.

Voyez-plutôt :

  • CreateRectRgn()
  • CreateRoundRectRgn()
  • CreateEllipticRgn()
  • CreatePolygonRgn()
  • ...

Celles ci-dessus étant les principales, nous ne verrons que celles-ci (la liste complète se trouvant bien entendu sur msdn).

CreateRectRgn()

CreateRectRgn() permet de créer une région de forme rectangulaire, dont les coordonnées des coins supérieur gauche et inférieur droit sont données.

Le prototype de CreateRectRgn() est le suivant :

HRGN CreateRectRgn(
int nLeftRect, //Abscisse du coin supérieur gauche de la région
int nTopRect, //Ordonnée du coin supérieur gauche de la région
int nRightRect, //Abscisse du coin inférieur droit de la région
int nBottomRect //Ordonnée du coin inférieur droit de la région
);

Variante : vous pouvez utiliser CreateRectRgnIndirect() à partir d'une simple structure (CONST) RECT*.

CreateRoundRectRgn()

CreateRoundRectRgn() permet de créer une région de la forme d'un rectangle ayant des coins arrondis, et dont les coordonnées des coins supérieur gauche et inférieur droit, ainsi que les dimensions de l'éllipse (permettant d'obtenir ces arrondis) sont données.

Le prototype de CreateRoundRectRgn() est le suivant :

HRGN CreateRoundRectRgn(
int nLeftRect, //Abscisse du coin supérieur gauche de la région
int nTopRect, //Ordonnée du coin supérieur gauche de la région
int nRightRect, //Abscisse du coin inférieur droit de la région
int nBottomRect //Ordonnée du coin inférieur droit de la région
int nWidthEllipse, //Largeur de l'ellipse inscrite
int nHeightEllipse //Hauteur de l'ellipse inscrite
);

CreateEllipticRgn()

CreateEllipticRgn() permet de créer une région de forme élliptique, dont les coordonnées des coins supérieur gauche et inférieur droit du rectangle dans lequel elle est inscrite sont données.

Le prototype de CreateEllipticRgn() est le suivant :

HRGN CreateEllipticRgn(
int nLeftRect, //Abscisse du coin supérieur gauche du rectangle circonscrit
int nTopRect, //Ordonnée du coin supérieur gauche du rectangle circonscrit
int nRightRect, //Abscisse du coin inférieur droit du rectangle circonscrit
int nBottomRect //Ordonnée du coin inférieur droit du rectangle circonscrit
);

Variante : vous pouvez utiliser CreateEllipticRgnIndirect() à partir d'une simple structure (CONST) RECT*.

CreatePolygonRgn()

CreatePolygonRgn() n'est certes pas la fonction la plus pratique de celles exposées, mais reste la plus intéressante. En effet, en procurant à la fonction un tableau de coordonnées de points (sous la forme d'un tableau de POINT (CONST) POINT*), leur nombre ainsi que le mode de remplissage (voir ci-après), vous pouvez créer exactement la région que vous souhaitez.

Son prototype est le suivant :

HRGN CreatePolygonRgn(
CONST POINT *lppt, //Tableau de points
int cPoints, //Nombre de points dans le tableau
int fnPolyFillMode //Mode de remplissage du polygone
);

Une petite mise au point s'impose quant au mode de remplissage. Celui-ci peut prendre les valeurs ALTERNATE, et WINDING. ALTERNATE est souvent conseillé, et décrit le procédé suivant : selon l'algorithme scanline, la zone comprise entre les arêtes impaires et paires du polygone correspondra à la région créée. (pour plus amples informations, cherchez sur la Toile :-° )

Opérations diverses

Parfois, ces fonctions ne suffisent pas pour obtenir les formes dont vous avez envie (par exemple quand vous n'avez pas envie de récupérer des points pour créer votre région >_ ). Dans ces cas là, on les complète par d'autres fonctions, comme CombineRgn(), pour étendre encore plus les possibilités.

Celle-ci permet de combiner deux régions, selon le mode de combinaison dont les valeurs possibles sont :

  • RGN_AND : La région obtenue est l'intersection des deux régions données
  • RGN_DIFF : La région obtenue est la combinaison des parties de la première des deux régions données, qui n'intersectent pas la deuxième.
  • RGN_OR : La région obtenue est l'union des deux régions données.
  • RGN_XOR : [Comme RGN_OR, sans les intersections des deux régions.]

Voici donc son prototype :

int CombineRgn(
HRGN hrgnDest, //Handle de la région de destination
HRGN hrgnSrc1, //Handle de la première des deux régions à combiner
HRGN hrgnSrc2, //Handle de la deuxième des deux régions à combiner
int fnCombineMode //Mode de combinaison des deux régions
);

La fonction peut alors retourner :

  • NULLREGION : La région obtenue est vide
  • SIMPLEREGION : La région obtenue est un rectangle
  • COMPLEXREGION : La région obtenue est plus qu'un simple rectangle
  • ERROR : Aucune région ne fut générée

Le but de ce tuto, c'est un peu d'avoir une fenêtre de la forme de son skin, non ? Je vais mettre des années à créer ma région !

Pas de panique, ces fonctions ne sont que des bases (pouvant néanmoins vous servir ultérieurement) à une fonction parfaitement adaptée : BmpToRgn() :ange:

Cette fonction (que j'ai découverte sur cppfrance.com à mes débuts, et créée par anthraxx) permet de récupérer une région à partir d'une image bitmap (donc d'une image 32bits) et d'une couleur de transparence (par défaut, noir).

Voici le code complet de la fonction :magicien: :

HRGN BmpToRgn (HBITMAP hBmp, COLORREF cTransparentColor)
{
#define ALLOC_UNIT 100
int y, x;
HRGN hRgn = NULL;
if (!hBmp) return 0; // si bitmap invalide retourne
BITMAP bm;
GetObject(hBmp, sizeof(bm), &bm); // met les infos d'en tete du bitmap dans bm
UINT siz=bm.bmWidth*bm.bmHeight*4; // enregistre la taille des donnes de l'image
char *lpBmpBits=(char*)LocalAlloc(LMEM_FIXED,siz); // fait de la place pour les bits du bitmap
GetBitmapBits(hBmp,siz,lpBmpBits); // obtient les bits de l'image dans l'espace qu'on a reservé
bm.bmBits=lpBmpBits; // complete la strucutre bm avec les bits

while (bm.bmWidthBytes % 4) bm.bmWidthBytes++; // bmWidthBytes doit être divisible par 4
DWORD maxRects = ALLOC_UNIT;
HANDLE hData = GlobalAlloc(GMEM_MOVEABLE, sizeof(RGNDATAHEADER) + (sizeof(RECT) * maxRects));
RGNDATA *pData = (RGNDATA *)GlobalLock(hData);
pData->rdh.dwSize = sizeof(RGNDATAHEADER);
pData->rdh.iType = RDH_RECTANGLES;
pData->rdh.nCount = pData->rdh.nRgnSize = 0;
SetRect(&pData->rdh.rcBound, MAXLONG, MAXLONG, 0, 0);
BYTE *p32 = (BYTE *)bm.bmBits;
for (y = 0; y < bm.bmHeight; y++) // parcourt toutes les lignes de l'image, de haut en bas
{
for (x = 0; x < bm.bmWidth; x++) // parcourt tous les pixels de la ligne, de gauche à droite
{
// Recherche une suite continue de pixels non transparents
int x0 = x;
LONG *p = (LONG *)(p32 + 4*x);
while (x < bm.bmWidth)
{
if ((unsigned)*p==cTransparentColor)
break; // ce pixel est transparent
p++;
x++;
}
if (x > x0)
{
// ajoute les pixels (de (x0, y) à (x, y+1)) à la region en tant que rectangle
if (pData->rdh.nCount >= maxRects)
{
GlobalUnlock(hData);
maxRects += ALLOC_UNIT;
hData = GlobalReAlloc(hData, sizeof(RGNDATAHEADER) +
(sizeof(RECT) * maxRects), GMEM_MOVEABLE);
pData = (RGNDATA *)GlobalLock(hData);
}
RECT *pr = (RECT *)&pData->Buffer;
SetRect(&pr[pData->rdh.nCount], x0, y, x, y+1);
if (x0 < pData->rdh.rcBound.left)
pData->rdh.rcBound.left = x0;
if (y < pData->rdh.rcBound.top)
pData->rdh.rcBound.top = y;
if (x > pData->rdh.rcBound.right)
pData->rdh.rcBound.right = x;
if (y+1 > pData->rdh.rcBound.bottom)
pData->rdh.rcBound.bottom = y+1;
pData->rdh.nCount++;
// Il parait que sous Windows 98, ExtCreateRegion() ne marche pas s'il y a trop de rectangles
// Pas de panique: on construit la region en deux fois
if (pData->rdh.nCount == 2000)
{
HRGN h = ExtCreateRegion(NULL, sizeof(RGNDATAHEADER) + (sizeof(RECT) * maxRects), pData);
if (hRgn)
{
CombineRgn(hRgn, hRgn, h, RGN_OR);
DeleteObject(h);
}
else
hRgn = h;
pData->rdh.nCount = 0;
SetRect(&pData->rdh.rcBound, MAXLONG, MAXLONG, 0, 0);
}
}
}
// On passe à la ligne suivante
p32 += bm.bmWidthBytes;
}
// On cree la region
// (et, s'il y avait plus de 2000 rectangles, on la combine avec celle créee precedemment)
HRGN h = ExtCreateRegion(NULL, sizeof(RGNDATAHEADER) + (sizeof(RECT) * maxRects), pData);
if (hRgn)
{
CombineRgn(hRgn, hRgn, h, RGN_OR);
DeleteObject(h);
}
else hRgn = h;
LocalFree((HLOCAL)lpBmpBits);
return hRgn;
}

Je ne vous demande evidemment pas de la comprendre, mais juste de savoir l'utiliser (c'est pour votre bien, hein :p ) : le handle de bitmap doit bien entendu être obtenu par le chargement d'une image avec LoadImage() ou LoadBitmap, et la structure COLORREF (la couleur de transparence) par un appel à RGB(). (voir L'affichage)

Testez quand même dans chacun des cas si la région obtenue vaut NULL ou pas (retour des fonctions si la création de la région a échoué).

Application de la région à une fenêtre

Alors là, il n'y a rien de plus simple, un appel de SetWindowRgn() avec comme paramètres le handle de la fenêtre à laquelle on veut appliquer la région, le handle de la région à appliquer, et enfin le "Redraw Flag" (booléen à fixer à TRUE si la fenêtre doit être redessinée, ou FALSE sinon).

Exemple

Voici un code illustratif de la manipulation des régions (non compilable) :

HRGN rectRegion,
roundRectRegion,
ellipticRegion,
polygonRegion,
combinedRegion,
bitmapRegion;
RECT rect = {10,10,300,100};
POINT pointArray[5];
//Soit bitmap ayant été chargé au préalable
//Soit hwnd ayant été créé au préalable
rectRegion = CreateRectRgnIndirect(&rect);
/* La plupart du temps, les deux dernières valeurs sont déterminées "au feeling" ;) */
roundRectRegion = CreateRoundRectRgn(10,10,300,100,10,10);
ellipticRegion = CreateEllipticRgnIndirect(&rect);
pointArray[0].x = 0; pointArray[0].y = 1;
pointArray[1].x = 3; pointArray[1].y = 3;
pointArray[2].x = 6; pointArray[2].y = 1;
pointArray[3].x = 5; pointArray[3].y = -2;
pointArray[4].x = 2; pointArray[4].y = -2;
polygonRegion = CreatePolygonRgn(pointArray, 5, ALTERNATE);
//RGN_XOR, par exemple
CombineRgn(combinedRegion, rectRegion, ellipticRegion, RGN_XOR);
//Le blanc est la couleur transparente
bitmapRegion = BmpToRgn(bitmap, RGB(255,255,255));
//Et enfin :
SetWindowRgn(hwnd, /* region */);

Si vous n'avez plus besoin d'une région, libérez-la avec DeleteObject(). Pensez-y...

Si vous utilisez BmpToRgn(), n'allez pas croire que cette fonction affiche l'image en même temps. (regardez le prototype... est-ce que vous voyez un HDC ? ^^ ) Bien entendu, vous devrez l'afficher postérieurement, en utilisant les méthodes décrites au chapitre L'affichage.

Rédacteur : Mg++

Gestion de la fenêtre

Maintenant que vous avez une fenêtre taillée par vos soins (dans la majorité des cas, sans barre de titre), peut-être voudriez-vous donner la possiblité à l'utilisateur de la bouger ? :-°

Pour cela, nous allons utiliser une notification très pratique (car ne servant fort heureusement pas qu'à ça), qui n'est autre que WM_NCHITTEST.

Cette notification est envoyée lorsqu'un événement, dont la source est la souris, survient sur la fenêtre d'un programme. Il s'agit d'un test antérieur aux messages WM_MOUSEMOVE, WM_LBUTTONDOWN etc. (tout comme WM_KEYDOWN est antérieur à WM_CHAR après test), pour déterminer dans quelle zone de la fenêtre se trouve la souris. Une fois traitée (si c'est le cas), nous devons renvoyer une constante indiquant la zone de la fenêtre correspondante (après test des coordonnées, forcément).

Ici, la constante à retourner est HTCAPTION (caption pour titre). Cependant, d'autres constantes peuvent être envoyées, représentant d'autres zones de la fenêtre :

  • HTBOTTOM : bordure inférieure (agrandissement vertical possible de la fenêtre)
  • HTBOTTOMLEFT/HTBOTTOMRIGHT : bordure inférieure gauche/droite (agrandissement possible de la fenêtre)
  • HTLEFT/HTRIGHT : bordure gauche/droite (agrnadissement horizontal possible de la fenêtre)
  • HTMAXBUTTON/HTMINBUTTON : bouton "maximiser"/"minimiser"
  • HTCLOSE : bouton de clôture
  • HTGROWBOX - HTSIZE : zone de redimensionnement
  • HTHELP : bouton d'aide
  • etc.

Par contre, si la zone visée n'est tout simplement qu'une zone client, vous devez renvoyer HTCLIENT (logique).

Toutes les possiblités de WM_NCHITTEST, comme celles citées ci-dessus, ne sont pas exposées ici, car ce n'est pas le but de cette partie, mais rien ne vous empêche d'aller vous renseigner sur msdn .

Comment déterminer dans quelle zone le curseur se trouve ?

Je l'ai dit plus haut, il faut tester les coordonnées du curseur. Pour cela, pas besoin de GetCursorPos(), elles se trouvent dans le LPARAM du message (le WPARAM étant non-utilisé). Par conséquent, vous pourrez les récupérer à l'aide des macros GET_X_LPARAM() et GET_Y_LPARAM(), ou MAKEPOINTS(), expliquées antérieurement.

Attention ! Les coordonnées retournées sont relatives au coin supérieur gauche de l'écran, et non à la zone client de la fenêtre (normal, puisque la notification est envoyée avant même que la fenêtre ne traite l'événement correspondant). Vous devrez donc utiliser la fonction GetWindowRect() de prototype :

BOOL GetWindowRect(
HWND hWnd, //Fenêtre visée
LPRECT lpRect //Pointeur de RECT
);

Ainsi, vous pourrez récupérer les coordonnées du curseur, relatives à la zone client de la fenêtre, par une bête soustraction des coordonnées contenues dans WM_NCHITTEST par celles retournées par GetWindowRect().

Exemple

/* Soit hwnd le handle de la fenêtre, et lParam le LPARAM de la callback */
//WindowProc avec switch du MSG
case WM_NCHITTEST:
{
LRESULT ret = HTCLIENT;
//Coordonnées de la fenêtre
RECT wCoord;
GetWindowRect(hwnd, &wCoord);
//Coordonnées relatives à la zone client de la fenêtre
POINT cCoord;
cCoord.x = GET_X_LPARAM(lParam) - wCoord.left;
cCoord.y = GET_Y_LPARAM(lParam) - wCoord.top;
//tests des coordonnées
if(/* zone dite "de déplacement" */)
ret = HTCAPTION;
//...
return ret;
}

Avec cette méthode, votre fenêtre devrait pouvoir bouger fluidement (en tout cas, autant qu'avec des barres de titre "normales" ;) )
Rédacteur : Mg++

Vous êtes d'orénavant capables de tailler vos fenêtres comme bon vous semble, tout en personnalisant sa gestion (redimensionnements, déplacements etc.). Dans une prochaine mise à jour du chapitre, nous verrons quelque chose de nettement plus intéressant, à savoir les listbox dites "ownerdraw", les boutons hover (boutons changeant d'état en fonction du stade de la souris), en utilisant les masques etc., et sûrement à partir de l'élaboration d'une hiérarchie de classes, etc.

Le cours n'est pas terminé, d'autres leçons suivront ;)


Documentation.htm

DOCUMENTATION

Vous trouverez ici une mini-documentation remplie au fur et à mesure de l'avancement du tuto.

Fonctions

Voici la liste de toutes les fonctions de l'API Windows que vous avez découvertes dans ce tutoriel.
Pour chaque fonction, j'explique le rôle, ses paramètres et sa valeur de retour.

WinMain

int WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow
);

Description

Cette fonction est le point d'entrée de tout programme Windows, c'est elle qui est appelée en premier dans votre programme. C'est en quelque sorte l'équivalent du main en programme console.

Paramètres

HINSTANCE hInstance

Ce paramètre est l'instance de votre programme, c'est-à-dire une sorte d'identifiant unique qui représente votre programme. Ce paramètre est très important, puisqu'il est utilisé dans de nombreuses fonctions ou structures comme WNDCLASS ou CreateWindow.

HINSTANCE hPrevInstance

Ce paramètre est obsolète depuis la fin de Windows 16-bit, il est toujours mis à NULL.

LPSTR lpCmdLine

Ce paramètre est une chaîne de caractères qui contient une copie conforme de la ligne de commande. Ainsi, contrairement aux programmes console, la ligne de commande n'est pas découpée en arguments mais conservée telle quelle.

int nCmdShow

Ce paramètre a un lien avec ShowWindow, puisqu'il représente l'état dans lequel doit être affichée la fenêtre du programme : maximisée, minimisée,...

Valeur de retour

Si le WinMain se termine avant la boucle des messages (voir GetMessage), alors elle doit retourner 0.
Sinon, lorsqu'elle reçoit le message WM_QUIT, elle doit renvoyer la valeur contenue dans wParam (voir l'exemple dans la première partie).

RegisterClass

ATOM RegisterClass(
CONST WNDCLASS *lpWndClass
);

Description

Cette fonction enregistre une classe de fenêtre pour une utilisation avec CreateWindow ou CreateWindowEx.
Cette fonction a maintenant été remplacée par une autre, plus puissante : RegisterClassEx, mais elle peut très bien continuer à être utilisée.

Paramètres

Le seul paramètre de cette fonction est un pointeur vers une structure de type WNDCLASS. Pour plus de précision, voir la description de la structure WNDCLASS.

Valeur de retour

Si la fonction réussit, la valeur retournée est un identifiant unique qui représente cette classe.
Si elle échoue, elle renvoie 0.

CreateWindow

HWND CreateWindow(
LPCTSTR lpClassName,
LPCTSTR lpWindowName,
DWORD dwStyle,
int x,
int y,
int nWidth,
int nHeight,
HWND hWndParent,
HMENU hMenu,
HINSTANCE hInstance,
LPVOID lpParam
);

Description

Cette fonction, comme son nom l'indique, sert à créer une fenêtre.

Sous Windows, il faut prendre le terme fenêtre au sens large : un contrôle (par exemple un bouton) est aussi une fenêtre.

Paramètres

LPCTSTR lpClassName

Ce paramètre est le nom d'une classe précédemment enregistrée avec RegisterClass.

Il existe certaines classes prédéfinies pour les contrôles comme
"BUTTON" pour un bouton.
Voir la liste en annexe.

LPCTSTR lpWindowName

Ce paramètre est le nom de la fenêtre lorsque l'on crée une "vraie" fenêtre.
Lorsqu'il s'agit d'un contrôle, ce paramètre peut être utile (ou non). Voilà une liste non exhaustive :

  • Bouton : texte du bouton
  • Liste : inutile
  • Zone d'édition : texte initial

DWORD dwStyle

Ce paramètre représente le style de la fenêtre, il résulte en fait de la combinaison de nombreuses styles.
Vous pourrez trouver une liste en annexe.
Il existe une série de styles qui s'appliquent à toutes les fenêtres, et d'autres qui ne s'appliquent qu'à certains contrôles.

int x,
int y,
int nWidth,
int nHeight

Ces paramètres représentent la position et la taille initiales de la fenêtre.
Si x=CW_USEDEFAULT, alors le système choisit automatiquement la position de la fenêtre.

CW_USEDEFAULT n'est autorisée que si la fenêtre a le style WS_OVERLAPPED, ou un style qui inclut WS_OVERLAPPED comme WS_OVERLAPPEDWINDOW.

Si nWidth=CW_USEDEFAULT, alors le système choisit automatiquement la taille par défaut de la fenêtre.

La même remarque que ci-dessus s'applique ici.

HWND hWndParent

Ce paramètre est l'identifiant du parent de la fenêtre à créer.
Si ce paramètre vaut NULL, la fenêtre a pour parent le Bureau.

HMENU hMenu

Ce paramètre, lors de la création d'une "vraie" fenêtre, est l'identifiant d'un menu qui s'affichera en haut de la fenêtre (vous savez comme 'Fichier', 'Édition', 'Aide', ...).
Lors de la création d'un contrôle, celui-ci représente un entier utilisé pour identifier le contrôle sans son HWND.
Par exemple:

HMENU identifiantControle=(HMENU)1000;

Il est conseillé de lui donner une valeur supérieure à 100 pour éviter les conflits avec le système.

Si ce paramètre vaut NULL, la fenêtre n'a pas de menu, ou pas d'identifiant selon le cas.

HINSTANCE hInstance

Ce paramètre est l'instance du programme qui crée la fenêtre ; ici en l'occurrence, le vôtre qui est passé en paramètre à WinMain.

LPVOID lpParam

Ce paramètre est un pointeur vers ce que vous voulez, il est utilisé pour passer un paramètre supplémentaire lors de la création de la fenêtre.
Voir la notification WM_CREATE en annexe.

Valeur de retour

Cette fonction renvoie un handle (poignée) sur votre fenêtre, c'est-à-dire une sorte d'identifiant unique, qui vous servira à communiquer avec votre fenêtre pour (par exemple) créer des contrôles dans votre fenêtre, ou changer sa taille.
Si la valeur de retour vaut NULL, alors la création a échoué.

ShowWindow

BOOL ShowWindow(
HWND hWnd,
int nCmdShow
);

Description

Cette fonction sert à modifier la visibilité d'une fenêtre.

Paramètres

HWND hWnd

Ce paramètre est le handle sur la fenêtre dont vous voulez modifier la visibilité.
Vous l'obtenez lors de l'appel à CreateWindow par exemple.

int nCmdShow

Ce paramètre peut prendre plusieurs valeurs selon la visibilité que vous voulez appliquer.

  • SW_HIDE : cache la fenêtre (celle-ci deviendra invisible à l'utilisateur).
  • SW_MAXIMIZE : la fenêtre prendra la taille de l'écran.
  • SW_MINIMIZE : la fenêtre sera réduite en barre des tâches.
  • SW_RESTORE : l'inverse de WS_MINIMIZE, la fenêtre retrouvera son état précédent.
  • SW_SHOW : rend la fenêtre visible.
  • SW_SHOWDEFAULT : trop compliqué pour l'instant, il faut avoir une connaissance plus approfondie de Windows pour le comprendre.
  • SW_SHOWMAXIMIZED : c'est équivalent à SW_SHOW + SW_MAXIMIZE.
  • SW_SHOWMINIMIZED : c'est équivalent à SW_SHOW + SW_MINIMIZE
  • SW_SHOWMINNOACTIVE : idem que SW_SHOWMINIMIZED, mais la fenêtre n'est pas activée.
  • SW_SHOWNA : idem que SW_SHOW mais la fenêtre n'est pas activée.
  • SW_SHOWNOACTIVATE : idem que SW_SHOWNORMAL, mais la fenêtre n'est pas activée.
  • SW_SHOWNORMAL : active et montre la fenêtre, si celle-ci est minimisée, cela équivaut à SW_RESTORE.

Je fais une petite remarque :
vous avez sûrement remarqué que j'utilise le mot activé en parlant des fenêtres.
Qu'est-ce que cela veut dire ?
Simplement sous Windows, il y a UNE seule fenêtre active à un moment donné, on appelle ça le focus. C'est elle qui reçoit les événements venant du clavier et de la souris.

Valeur de retour

Cette fonction renvoie TRUE si elle a réussi, et FALSE si elle a échoué.

UpdateWindow

BOOL UpdateWindow(
HWND hWnd
);

Description

Cette fonction met à jour la zone client de la fenêtre, en la forçant à être redessinée en envoyant un message WM_PAINTdirectement à la fenêtre, au lieu de placer le message dans la file des messages.

Paramètres

HWND hWnd

handle de la fenêtre dont la zone client est à redessiner.

Valeur de retour

La fonction renvoie TRUE en cas de succès, et FALSE en cas d'échec.

GetMessage

BOOL GetMessage(
LPMSG lpMsg,
HWND hWnd,
UINT wMsgFilterMin,
UINT wMsgFilterMax
);

Description

Cette fonction récupère un message dans la file du thread appelant.

La précision est importante, car si votre programme possède plusieurs thread, il faut faire attention à qui gère l'interface.

Paramètres

LPMSG lpMsg

Ce paramètre est un pointeur vers une structure de type MSG (voir annexe) qui contiendra, après l'appel à la fonction, le message récupéré.

HWND hWnd

Ce paramètre représente l'identifiant de la fenêtre dont on veut récupérer le message.
S'il ce paramètre vaut NULL, alors la fonction récupère un message qui appartient à n'importe quelle fenêtre créée par le thread.

L'intérêt de paramètre est de permettre une granularité plus fine sur les messages que l'on veut faire passer.

UINT wMsgFilterMin,UINT wMsgFilterMax

Ces paramètres représentent respectivement les identifiants des messages les plus "bas" et les plus "hauts" à faire passer.
Si ces paramètres valent 0, tous les messages sont passés.
Valeurs particulières :

  • WM_KEYFIRST, WM_KEYLAST pour tous les événements clavier.
  • WM_MOUSEFIRST, WM_MOUSELAST pour tous les événements souris.
Valeur de retour

Cette fonction retourne TRUE si elle réussit, et FALSE si elle échoue.

translatemessage

BOOL TranslateMessage(
const MSG *lpMsg
);

Description

Cette fonction est uniquement utile pour les messages de type clavier, elle traduit les événements de type Touche Virtuelle (voir note) en événement de types Caractère (voir note), et poste le message obtenu dans la file des messages.

Qu'est-ce que c'est donc que ça ?
En fait, lorsque vous appuyez sur une touche, le clavier envoie à Windows un nombre qui est le numéro physique de la touche, ensuite Windows traduit ce numéro en nombre qui est le numéro logique ou virtuel de la touche (les VK_*).
Le problème, c'est que pour les éditeurs de textes, ce n'est pas pratique de savoir quelle touche a été enfoncée ; ce qui les intéressent, c'est le caractère correspondant à cette touche.
C'est pourquoi cette fonction fait la traduction.

Paramètres

const MSG *lpMsg

Ce paramètre est un pointeur vers le message récupéré par GetMessage.

Valeur de retour

Si le message a été traduit, cette fonction renvoie TRUE.
Si le message est WM_KEYDOWN, WM_KEYUP, WM_SYSKEYDOWN ou WM_SYSKEYUP, cette fonction renvoie TRUE.
Sinon, elle renvoie FALSE.

DispatchMessage

LRESULT DispatchMessage(
const MSG *lpmsg
);

Description

Cette fonction envoie le message à la fonction de callback de la fenêtre concernée.
En quelque sorte, c'est elle qui appelle votre fonction qui gère les messages.

Paramètres

const MSG *lpMsg

Ce paramètre est un pointeur vers le message récupéré par GetMessage.

Valeur de retour

Cette fonction renvoie la valeur retournée par votre fonction de callback.
Par exemple, si dans votre de fonction de gestion des messages vous faites : "return 1000;",
alors, cette fonction retournera 1000.

WindowProc

LRESULT CALLBACK WindowProc
HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam
);

Description

Ceci n'est pas vraiment une fonction de l'API Windows à proprement parler : c'est la fonction de gestion des messages envoyée à votre (vos) fenêtre(s).

Paramètres

HWND hwnd

Ceci est le handle de la fenêtre concernée par le message.

UINT uMsg

Ceci est l'identifiant du message.

WPARAM wParam,
LPARAM lParam

Ces paramètres sont entièrement dépendant du message envoyé.
Voir l'annexe sur les messages.

Valeur de retour

Ceci est la valeur retournée par vous-mêmes, ou la fonction DefWindowProc.

DefWindowProc

LRESULT DefWindowProc(
HWND hWnd,
UINT Msg,
WPARAM wParam,
LPARAM lParam
);

Description

Cette fonction appelle la fonction de gestion des messages par défaut du système. Elle est utile lorsque vous ne gérez pas vous-mêmes le message.
En pratique, à chaque fois que vous ne gérez pas un message, vous appelez cette fonction.

Paramètres

Vous devez passer les paramètres de votre fonction de gestion des messages (voir WindowProc) tels quels..

Valeur de retour

Ceci est la valeur retournée par la fonction de gestion des messages. Vous devez retourner cette valeur :

return DefWindowProc(hwnd,uMsg,wParam,lParam);

SendMessage

LRESULT SendMessage(
HWND hWnd,
UINT Msg,
WPARAM wParam,
LPARAM lParam
)

Description

Cette fonction permet d'envoyer un message à une fenêtre ou à un contrôle. C'est-à-dire qu'elle va appeler la fonction de gestion des messages de la fenêtre avec les paramètres que vous spécifiez.
Par exemple, si vous faites :

SendMessage(hwnd,WM_QUIT,0,0);

Ceci va appeler une fonction de type WindowProc, associée à hwnd, avec exactement les mêmes paramètres que vous avez spécifiés.

Paramètres

Ce sont les même que pour WindowProc sauf que hWnd est l'identifiant de la fenêtre à laquelle vous envoyez le message.

Valeur de retour

Cette fonction renvoie la valeur retournée par la fonction de gestion des messages.

MessageBox

int MessageBox(
HWND hWnd,
LPCTSTR lpText,
LPCTSTR lpCaption,
UINT uType
);

Description

Cette fonction extrêmement pratique permet d'afficher une petite fenêtre avec du texte dedans pour informer l'utilisateur, ou lui demander quelque chose.

Par exemple, lorsque vous fermez votre éditeur de texte préféré, vous obtenez un message :
Voulez-vous sauvegarder votre travail ?
Et un choix Oui / Non. Eh bien vous pouvez faire ceci avec MessageBox.

Paramètres

HWND hWnd

Ce paramètre est le handle de la fenêtre qui sera le parent du message affiché.

Mais quel intérêt ?
Vous savez que quand ce message s'affiche dans votre éditeur de texte préféré, vous ne pouvez plus activer votre éditeur de texte, sinon vous obtenez un 'Beeeeeep'.
Eh bien c'est parce que le parent du message est la fenêtre de votre éditeur de texte.

LPCTSTR lpText

Ce paramètre est la chaîne de caractères à afficher dans le message.

Si dans la chaîne de caractères vous mettez '\n', alors cela passera à la ligne suivante comme dans la console.

LPCTSTR lpCaption

Ce paramètre est la chaîne de caractères à afficher comme titre de la fenêtre.

Si dans la chaîne de caractères vous mettez '\n', le résultat est indéfini.

UINT uType

Ce paramètre est le type de message à afficher.
Il peut être la combinaison de plusieurs paramètres grâce au OU binaire(|).
Le premier groupe de paramètres spécifie les boutons à afficher :

  • MB_ABORTRETRYIGNORE : trois boutons : 'Abandonner', 'Réessayer', 'Ignorer'.
  • MB_OK : un bouton : 'Ok'.
  • MB_OKCANCEL : deux boutons : 'Ok', 'Annuler'.
  • MB_RETRYCANCEL : deux boutons : 'Réessayer', 'Annuler'.
  • MB_YESNO : deux boutons : 'Oui', 'Non'.
  • MB_YESNOCANCEL : trois boutons : 'Oui', 'Non', 'Annuler'.

Le deuxième groupe spécifie l'icône à afficher :

  • MB_ICONEXCLAMATION : un point d'exclamation.
  • MB_ICONWARNING : un point d'exclamation.
  • MB_ICONINFORMATION : un i dans un cercle.
  • MB_ICONASTERISK : un i dans un cercle.
  • MB_ICONQUESTION : un point d'exclamation (ce paramètre est déconseillé par Microsoft).
  • MB_ICONSTOP : une icône STOP.
  • MB_ICONERROR : une icône d'erreur.
  • MB_ICONHAND : une icône de main.

Le troisième groupe spécifie le bouton par défaut.

C'est quoi le bouton par défaut ?
Vous savez, quand vous avez un message et que vous appuyez sur Entrée, cela "appuie" sur le bouton qui apparaît différent des autres.

  • MB_DEFBUTTON1 : le premier bouton de la liste.
  • MB_DEFBUTTON2 : le deuxième bouton de la liste.
  • MB_DEFBUTTON3 : le troisième bouton de la liste.
  • MB_DEFBUTTON4 : le quatrième bouton de la liste.

Le quatrième groupe spécifie le type de fenêtre :

  • MB_APPLMODAL : l'utilisateur doit répondre, mais peut activer les autres fenêtres du Bureau, sauf la fenêtre parent du message.
  • MB_SYSTEMMODAL : même chose que MB_APPLMODAL, mais si la fenêtre parent n'est pas la fenêtre au premier plan, elle le devient, et y reste jusqu'à ce que l'utilisateur réponde.
  • MB_TASKMODAL : même chose que MB_APPLMODAL, mais si la fenêtre parent vaut NULL, toutes les fenêtres du thread appelant sont désactivées en attendant la réponse.

Le dernier groupe spécifie d'autres options :

  • MB_RIGHT : le texte est justifié à droite.
  • MB_RTLREADING : le texte est affiché de droite à gauche.
  • MB_SETFOREGROUND : le fenêtre du message passe au premier plan.
  • MB_TOPMOST : la fenêtre du message passe au premier plan, et le reste jusqu'à ce que l'utilisateur réponde.
Valeur de retour

Si la fonction échoue, elle renvoie 0.
Si elle réussit, elle renvoie:

  • IDABORT : l'utilisateur a pressé 'Abandonner'.
  • IDCANCEL : l'utilisateur a pressé 'Annuler'.
  • IDCONTINUE : l'utilisateur a pressé 'Continuer'.
  • IDIGNORE : l'utilisateur a pressé 'Ignorer'.
  • IDNO : l'utilisateur a pressé 'Non'.
  • IDOK : l'utilisateur à pressé 'Ok'.
  • IDRETRY : l'utilisateur à pressé 'Réessayer'.
  • IDTRYAGAIN : l'utilisateur à pressé 'Essayer encore'.
  • IDYES : l'utilisateur à pressé 'Oui'.

CreateMenu

HMENU CreateMenu(VOID);

Description

Cette fonction permet de créer un menu. Ce menu est initialement vide.

Paramètres
Valeur de retour

Le handle du menu en cas de succès, et NULL en cas d'échec.

AppendMenu

BOOL AppendMenu(
HMENU hMenu,
UINT uFlags,
UINT_PTR uIDNewItem,
LPCTSTR lpNewItem
);

Description

Cette fonction permet d'ajouter un élément à un menu existant.

Par élément, on entend aussi bien un libellé (texte) qu'une case à cocher, une image ou un sous-menu.

Paramètres

HMENU hMenu

Le handle du menu auquel on va ajouter l'élément.

UINT uFlags

Ce paramètre peut être la combinaison d'un ou plusieurs de ces paramètres :

  • MF_BITMAP : utilise une image comme élément ; dans ce cas, lpNewItem contiendra alors le handle de l'image.
  • MF_CHECKED : place une case à cocher à gauche de l'élément.
  • MF_DISABLED : désactive l'élément, il ne peut être sélectionné ; mais ce paramètre ne le fait pas apparaître comme grisé.
  • MF_ENABLED : active l'élément, il peut être sélectionné et n'est pas grisé.
  • MF_GRAYED : désactive l'élément et le fait apparaître grisé.
  • MF_MENUBARBREAK : place l'élément dans une nouvelle colonne.
  • MF_MENUBREAK : même chose que MF_MENUBARBREAK
  • MF_OWNERDRAW : l'élément est dessiné par l'utilisateur.
  • MF_POPUP : l'élément ouvre un menu déroulant.
  • MF_SEPARATOR : l'élément est un séparateur, il ne peut être sélectionné ni mis en surbrillance ; dans ce cas, lpNewItem et uIDNewItem sont ignorés.
  • MF_STRING : l'élément est un libellé (texte) ; dans ce cas, lpNewItem est pointeur sur le texte à afficher.
  • MF_UNCHECKED : l'élément n'a pas de case à cocher à sa gauche (c'est le comportement par défaut).

Les groupes suivants ne peuvent être utilisés ensemble :

  • MF_BITMAP, MF_STRING et MF_OWNERDRAW
  • MF_CHECKED et MF_UNCHECKED
  • MF_DISABLED, MF_ENABLED et MF_GRAYED
  • MF_MENUBARBREAK et MF_MENUBREAK

UINT_PTR uIDNewItem

Spécifie soit l'identifiant du menu, ou si uFlags est mis à MF_POPUP, le handle du sous-menu.

LPCTSTR lpNewItem

Ce paramètre dépend de la valeur de lpNewItem :

  • MF_BITMAP : handle du bitmap.
  • MF_OWNERDRAW : pointeur vers des données utilisateur, utilisables lors du dessin grâce au paramètre lParam.
  • MF_STRING : pointeur sur la chaîne de caractère à afficher.
Valeur de retour

La fonction renvoie TRUE en cas de succès, et FALSE en cas d'échec.

SetMenu

BOOL SetMenu(
HWND hWnd,
HMENU hMenu
);

Description

Cette fonction permet de définir le menu associé à une fenêtre.

Paramètres

HWND hWnd

handle de la fenêtre à laquelle on assigne un nouveau menu.

HMENU hMenu

handle du nouveau menu, ou NULL pour que la fenêtre n'ait plus de menu associé.

Valeur de retour

Elle renvoie TRUE en cas de succès, et FALSE en cas d'erreur.

En aucun cas cette fonction ne détruit le menu associé, vous devez appelez destroymenu pour accomplir cette tâche.

EnableMenuItem

BOOL EnableMenuItem(
HMENU hMenu,
UINT uIDEnableItem,
UINT uEnable
);

Description

Cette fonction permet d'activer, désactiver et griser un élément d'un menu.

Paramètres

HMENU hMenu

handle du menu auquel appartient l'élément à modifier.

UINT uIDEnableItem

Ce paramètre est l'indice ou l'identifiant de l'élément du menu à modifier selon le paramètre uEnable.

UINT uEnable

Ce paramètre peut prendre une ou plusieurs de ces valeurs :

  • MF_BYCOMMAND : le paramètre uIDEnableItem spécifie l'identifiant de l'élément (comportement par défaut).
  • MF_BYPOSITION : le paramètre uIDEnableItem spécifie l'indice de l'élément (relatif à 0).
  • MF_DISABLED : désactive l'élément (celui-ci ne sera pas grisé).
  • MF_ENABLED : active l'élément et supprime son attribut grisé.
  • MF_GRAYED : désactive et grise l'élément.
Valeur de retour

La fonction retourne l'état précédent de l'élément modifié (MF_DISABLED, MF_ENABLED ou MF_GRAYED), ou -1 en cas d'échec.

CheckMenuItem

DWORD CheckMenuItem(
HMENU hmenu,
UINT uIDCheckItem,
UINT uCheck
);

Description

Cette fonction permet de définir l'état de la boîte à cocher de l'élément d'un menu.

Paramètres

HMENU hmenu

handle de l'élément auquel appartient le menu.

UINT uIDCheckItem

Ce paramètre est l'indice ou l'identifiant de l'élément du menu à modifier selon le paramètre uEnable.

UINT uEnable

Ce paramètre peut prendre une ou plusieurs de ces valeurs :

  • MF_BYCOMMAND : le paramètre uIDEnableItem spécifie l'identifiant de l'élément (comportement par défaut).
  • MF_BYPOSITION : le paramètre uIDEnableItem spécifie l'indice de l'élément (relatif à 0).
  • MF_CHECKED : coche la boîte à cocher de l'élément.
  • MF_UNCHECKED : décoche la boîte à cocher de l'élément.
Valeur de retour

La fonction retourne l'état précédent de l'élément modifié (MF_CHECKED ou MF_UNCHECKED), ou -1 en cas d'échec.

LoadMenu

HMENU LoadMenu(
HINSTANCE hInstance,
LPCTSTR lpMenuName
);

Description

Cette fonction permet de charger un menu contenu dans une ressource de l'exécutable.

Paramètres

HINSTANCE hInstance

Instance du programme qui contient la ressource à charger.

LPCTSTR lpMenuName

Nom de la ressource à charger.
Peut être une chaîne de caractères, ou un identifiant formé avec la macro MAKEINTRESOURCE.

Valeur de retour

Elle renvoie le handle du menu en cas de succès, et NULL en cas d'échec.

CreateDialog

HWND CreateDialog(
HINSTANCE hInstance,
LPCTSTR lpTemplate,
HWND hWndParent,
DLGPROC lpDialogFunc
);

Description

Cette fonction permet de créer une boîte de dialogue stockée en ressource dans l'exécutable.

Paramètres

HINSTANCE hInstance

Instance du programme auquel appartient la ressource.

LPCTSTR lpTemplate

Nom de la ressource de type boîte de dialogue.
Peut être un pointeur sur une chaîne de caractères, ou une valeur formée par la macro MAKEINTRESOURCE.

HWND hWndParent

handle de la fenêtre parent de la boîte de dialogue.

DLGPROC lpDialogFunc

Pointeur vers la fonction de gestion des messages de la boîte de dialogue.

Valeur de retour

Cette fonction renvoie le handle de la boite de dialogue, ou NULL en cas d'échec.

DialogBox

INT_PTR DialogBox(
HINSTANCE hInstance,
LPCTSTR lpTemplate,
HWND hWndParent,
DLGPROC lpDialogFunc
);

Cette fonction (qui en fait est une macro) fait la même chose que CreateDialogBox, sauf qu'elle ne rend le contrôle que lors de la destruction de la boîte de dialogue avec la fonction EndDialog.

Paramètres

Ceux sont les mêmes que pour la fonction CreateDialogBox.

Valeur de retour

Cette fonction renvoie la valeur passée au paramètre nResult de la fonction EndDialog.

EndDialog

BOOL EndDialog(
HWND hDlg,
INT_PTR nResult
);

Description

Cette fonction détruit la boîte de dialogue, et rend le contrôle au thread lorsque celle-ci a été créée avec la fonction DialogBox qui est bloquante.

Paramètres

HWND hDlg

handle de la boîte de dialogue à détruire.

INT_PTR nResult

Spécifie une valeur à retourner à l'application lors de la destruction.

Cette fonction ne détruit pas instantanément la boîte de dialogue, mais attend que la fonction qui a créé la boîte de dialogue rende le contrôle.

Messages

Voici la liste de tous les messages de l'API Windows que vous avez découverts dans ce tutoriel, et qui sont envoyés à la fonction de gestion des messages .
Pour chaque message, j'expliquerai sa signification ainsi que celle des paramètres wParam et lParam et de la valeur retournée.

WM_CREATE

Description

Ce message est envoyé lors de la création d'une fenêtre avec CreateWindow et CreateWindowEx.

wParam

Ce paramètre est inutilisé.

lParam

Pointeur vers une structure de type CREATESTRUCT.
Voir Annexe sur les structures.

Valeur de retour

Retournez 0 pour continuer la création de la fenêtre, ou -1 pour annuler la création.

WM_DESTROY

Description

Ce message est envoyé lorsqu'une fenêtre va être détruite.

wParam

Ce paramètre est inutilisé.

lParam

Ce paramètre est inutilisé.

Valeur de retour

Retournez 0.

WM_COMMAND

Description

Ce message est utilisé lorsque l'utilisateur interagit avec un contrôle.

wParam

Le mot haut (récupérable avec HIWORD) est le code de notification du contrôle. Celui-ci est spécifique à chaque classe de contrôle. Il vaut 1 si le message vient d'un raccourci clavier, et 0 si le message vient d'un menu.
Le mot bas (récupérable avec LOWORD) est l'identifiant de la fenêtre spécifié lors de la création avec CreateWindow et le paramètre hMenu.

lParam

handle du contrôle (fils de la fenêtre qui reçoit le message) qui a envoyé le message.
Il vaut NULL si ce n'est pas un contrôle.

Valeur de retour

Retournez 0.

Structures

Voici la liste de toutes les structures de l'API Windows que vous avez découvertes dans ce tutoriel.
Pour chaque structure, j'expliquerai le rôle de chacun des membres.

WNDCLASS

typedef struct {
UINT style;
WNDPROC lpfnWndProc;
int cbClsExtra;
int cbWndExtra;
HINSTANCE hInstance;
HICON hIcon;
HCURSOR hCursor;
HBRUSH hbrBackground;
LPCTSTR lpszMenuName;
LPCTSTR lpszClassName;
} WNDCLASS, *PWNDCLASS;

Description

Cette structure est utilisée lors de la création d'une classe de fenêtre.
Elle est passée en paramètre à RegisterClass.

Membres

UINT style

Spécifie les styles de la classe, ce peut être une combinaison avec le OU binaire (|) de n'importe quel paramètre :

  • CS_BYTEALIGNCLIENT : aligne la zone client des fenêtres sur la frontière d'un octet. Ce style affecte la taille et la position horizontale des fenêtres.
  • CS_BYTEALIGNWINDOW : même chose que CS_BYTEALIGNCLIENT, mais concernant la zone fenêtre, et non pas sa zone client.
  • CS_CLASSDC : les fenêtres de cette classe partagent toutes le même DC (device context) utilisé lorsque l'on dessine dans les fenêtres.
  • CS_DBLCLKS : les fenêtres reçoivent des événements de type double-clic.
  • CS_GLOBALCLASS : cette classe est globale au système et non pas locale au programme.
  • CS_HREDRAW : redessine la fenêtre en cas de changement de largeur des fenêtres.
  • CS_NOCLOSE : la fenêtre ne peut pas être fermée.
  • CS_OWNDC : chaque fenêtre à son propre DC.
  • CS_PARENTDC : permet d'optimiser le dessin dans le DC en récupérant le DC du parent et en empêchant le dessin en dehors de sa surface.
  • CS_SAVEBITS : lorsqu'une portion de fenêtre est cachée par une autre, sauvegarde cette portion puis la restaure ultérieurement au lieu de redessiner.
  • CS_VREDRAW : redessine la fenêtre en cas de changement de hauteur.

Mais qu'est-ce qu'un DC ?
Un DC (Device Context) est utilisé lors du dessin dans la zone client d'une fenêtre.
Par exemple, lorsque vous créez des boutons dans une fenêtre, ceux-ci sont dessinés dans des DC, puis ces DC sont copiés sur le DC du parent qui est ensuite affiché.
On peut voir un DC comme une zone de dessin.
Le paramètre CS_PARENTDC permet, au lieu de copier les DC des fils dans celui du parent (ce qui est lent), de dessiner directement le fils dans le DC du parent.
Les DC sont principalement utilisé avec les fonctions du GDI qui permettent de dessiner des rectangles, carrés, du texte, des polygones, etc.

WNDPROC lpfnWndProc

Ce membre est un pointeur vers la fonction de gestion des messages arrivant à toutes les fenêtres de cette classe.

int cbClsExtra

Spécifie le nombre d'octets supplémentaires à allouer dans la structure de la classe.
Cela permet de stocker des données supplémentaires associées à cette classe.

int cbWndExtra

Spécifie le nombre d'octets supplémentaires à allouer dans la structure d'une fenêtre.
Cela permet de stocker des données supplémentaires associées à chaque fenêtre.

HINSTANCE hInstance

Instance du programme qui crée la classe.
Cette variable est passée en paramètre au WinMain.

HICON hIcon

handle de l'icône à afficher dans la barre de titre des fenêtres de cette classe.

HCURSOR hCursor

handle du curseur à afficher quand le pointeur de la souris est au-dessus de la fenêtre.

HBRUSH hbrBackground

Brosse à utiliser pour dessiner le fond de la fenêtre (c'est en rapport avec le GDI).
Il y en a quelques-unes prédéfinies :

  • COLOR_ACTIVEBORDER
  • COLOR_ACTIVECAPTION
  • COLOR_APPWORKSPACE
  • COLOR_BACKGROUND
  • COLOR_BTNFACE
  • COLOR_BTNSHADOW
  • COLOR_BTNTEXT
  • COLOR_CAPTIONTEXT
  • COLOR_GRAYTEXT
  • COLOR_HIGHLIGHT
  • COLOR_HIGHLIGHTTEXT
  • COLOR_INACTIVEBORDER
  • COLOR_INACTIVECAPTION
  • COLOR_MENU
  • COLOR_MENUTEXT
  • COLOR_SCROLLBAR
  • COLOR_WINDOW
  • COLOR_WINDOWFRAME
  • COLOR_WINDOWTEXT

Si ce paramètre est NULL, le programme doit dessiner lui-même le fond de la fenêtre lors des notification WM_PAINT ou WM_ERASEBKGND.

LPCTSTR lpszMenuName

Nom de la ressource à utiliser comme menu pour les fenêtres de la classe (voir note).

LPCTSTR lpszClassName

Nom de la classe. Il doit être unique dans le programme pour que la classe soit enregistrée avec succès.

Qu'est-ce qu'une ressource ?
Une ressource est une donnée spéciale intégrée à l'exécutable avec un nom.
Par exemple, on peut intégrer une image, un menu, un raccourci clavier, une fenêtre, etc.
Chaque ressource est identifiée par un nom qui peut être une chaîne de caractères ou un identifiant.
Les ressources peuvent aussi être intégrées à l'exécutable avec un fichier .rc.

MSG

typedef struct {
HWND hwnd;
UINT message;
WPARAM wParam;
LPARAM lParam;
DWORD time;
POINT pt;
} MSG, *PMSG;

Description

Cette structure représente un message dans la file des messages envoyés à une fenêtre.

Membres

HWND hwnd

Ceci est le handle de la fenêtre qui doit recevoir le message.

UINT message

Identifiant du message (c'est le même que celui passé à la fonction de gestion des messages).

WPARAM wParam
LPARAM lParam

Ce sont des paramètres supplémentaires passés à la fonction de gestion des messages.

DWORD time

L'heure à laquelle le message a été posté.

POINT pt

Position du curseur lorsque le message a été posté.

CREATESTRUCT

typedef struct tagCREATESTRUCT {
LPVOID lpCreateParams;
HINSTANCE hInstance;
HMENU hMenu;
HWND hwndParent;
int cy;
int cx;
int y;
int x;
LONG style;
LPCTSTR lpszName;
LPCTSTR lpszClass;
DWORD dwExStyle;
} CREATESTRUCT, *LPCREATESTRUCT;

Description

Cette structure est passée en paramètre avec le message WM_CREATE.
Elle permet de connaître les paramètres exacts avec lesquels la fenêtre a été créée.

Membres

Les membres sont exactement les mêmes que pour CreateWindow.
Seules précisions :

int x int y int cx int cy

Si, lors de la création, vous avez spécifié CW_USEDEFAULT ou 0, la valeur vaudra alors la taille réelle de la fenêtre.

RECT

typedef struct _RECT {
LONG left;
LONG top;
LONG right;
LONG bottom;
} RECT;

Description

Cette structure permet de stocker différents paramètres qui ont à voir avec des rectangles comme des dimensions, des marges ou des positions...

Membres

LONG left

Coordonnée en abscisse du coin supérieur gauche.

LONG top

Coordonnée en ordonnée du coin supérieur gauche.

LONG right

Coordonnée en abscisse du coin inférieur droit.

LONG bottom

Coordonnée en ordonnée du coin inférieur droit.

La documentation sera remplie au fur et à mesure de l'avancement du tuto, et de notre temps libre. ;)


Glossaire.htm

GLOSSAIRE

Voici donc les termes que vous ne connaissez peut être pas. N'hésitez pas à regarder si vous avez des doutes.

Termes

  • msdn : véritable bible du codeur winAPI, c'est en fait la documentation anglaise de Microsoft accessible ici .
  • Bas niveau (langage, fonction, instruction, etc.) : peu développé, proche du système voire du matériel. Exemple : langage bas niveau.
  • Pop-up : se dit d'une fenêtre ou d'un menu apparaissant soudainement après une action de l'utilisateur.
  • Haut niveau : développé, proche de l'utilisateur ou codeur. Exemple : langage haut niveau.
  • Instance : utilisé généralement dans les langages orientés objets, désigne une occurrence d'un objet. Elle est dans ce tuto votre programme en lui-même (c'est un objet après tout). Exemple :

//variable est une instance de Objet
Objet variable;

  • Fonction callback : fonction chargée de traiter les messages envoyés à une fenêtre, ou à un contrôle. Aussi dénommée procédure. Exemple :

LRESULT CALLBACK MainWndProc(HWND, UINT, WPARAM, LPARAM);

  • Template, ou modèle : sorte de schéma situé en ressource décrivant l'organisation d'un objet, comme un menu ou une boîte de dialogue. En C++, c'est une fonction applicable à n'importe quel type d'argument. Exemple :

ID_MENU MENU
BEGIN
POPUP "Menu"
BEGIN
MENUITEM "Commande 1", ID_CMD1
MENUITEM "Commande 2", ID_CMD2
END
END

  • Cast, ou transtypage : action de transformer le type d'une variable en une autre. Exemple :

long lVariable = (long)iVariable

  • Flag, ou drapeau : caractère spécial donné à un objet, pouvant être combiné avec l'opérateur logique |. Généralement utilisé pour les styles. Exemple :

truc.uFlags = F_TRUC | F_MACHIN;

  • Focus : fait, généralement pour un contrôle, de recevoir tous les évènements clavier. Pour une fenêtre, on parle d'active.

Le glossaire n'est pas fini, il est rempli au fur et à mesure de l'avancement du tuto ;)


Manipulation du registre.htm

MANIPULATION DU REGISTRE

Vous allez ici apprendre à manier les clés registre en utilisant des fonctions définies dans l'API win32.

A la fin de ce chapitre, vous saurez, en modifiant manuellement (avec le winAPI) ou semi-manuellement (en modifiant les clés à la main) :

  • Lancer votre programme au démarrage de windows
  • Changer l'icône d'un type de fichiers
  • Associer votre programme avec un ou plusieurs types de fichiers

Pour ce faire, lisez ce qui suit attentivement et ne modifiez surtout pas ce que vous ne connaissez pas.

Quelques notions de BDR

Avant de commencer, nous allons vous inculquer quelques notions de BDR.

Mais que diable est-ce, la BDR ?

La BDR est une base de données où sont stockées les informations nécessaires au bon fonctionnement de Windows. On y trouve :

  • les configurations de l'ordinateur (matériel, etc.)
  • la personnalisation de Windows (affichage, sons, etc.)
  • les préférences utilisées pour les programmes et jeux (historiques, tableaux de scores, options, chemins d'accès, etc.)
  • etc.

Ainsi, chaque fois que vous modifiez ne serait-ce qu'une chose (si petite soit elle) dans votre ordinateur, la BDR s'en trouve sensiblement changée.

Les informations sont classées dans des dossiers dans l'arborescence, et se présentent sous la forme de clés registre. Celles-ci sont des informations, possédant un type, un ID et une valeur.

Normalement, les clés registre sont les dossiers présents dans l'arborescence, et les informations des valeurs, mais j'ai préféré garder cette syntaxe pour une meilleure compréhension.

Vous pouvez accéder à la BDR en tapant 'regedit' (comme registry edit) dans la boîte de dialogue 'Exécuter...', présente dans le menu 'Démarrer'.

Pour ceux qui ne l'ont jamais vue, voici sous quelle forme se présente la BDR :

Comme vous pouvez le voir sur cette capture d'écran, les répertoires à la racine de la BDR sont :

  • HKEY_LOCAL_MACHINE : contient les informations communes à tous les utilisateurs de la machine.
  • HKEY_CLASSES_ROOT : contient les informations sur les extensions de fichiers, donc des associations.
  • HKEY_CURRENT_USER : contient les informations (préférences en général) spécifiques à l'utilisateur actuel.
  • HKEY_USERS : contient les paramètres propres à chaque utilisateur.
  • HKEY_CURRENT_CONFIG : contient les configurations de l'utilisateur actuel.

Bien ! Je pense que vous savez maintenant le minimum pour débuter. Direction la prochaine partie.
Rédacteur : Mg++

Changement d'icône de fichiers

Commençons progressivement. Nous allons voir comment, à partir du répertoire racine HKEY_CLASS_ROOT, changer l'icône associée à un type de fichier.

1ère méthode : méthode semi-manuelle (manipulation au travers de regedit)

Voilà comment est organisée la BDR de ce côté-ci : un dossier portant comme nom une extension contient une clé registre (default) portant comme valeur le nom descriptif du fichier. Alors, le dossier portant ce nom descriptif à l'intérieur de HKEY_CLASSES_ROOT (donc un niveau en arrière) contient un dossier intitulé DefaultIcon. Dans celui-ci, la clé (default) porte comme valeur le chemin de l'icône associée à ce type de fichiers.

Il se peut que le chemin de l'icône ne vous porte pas à croire que cela en est un : parfois (souvent en fait pour Windows), ce chemin est en fait le chemin d'accès vers une DLL (Dynamic Link Library), contenant dans ses ressources l'icône demandée. Il est alors suivi d'une virgule, et d'un nombre étant son ID en ressource.

Voici concernant le descriptif de son organisation. Concrètement, les étapes permettant de changer l'icône peuvent être représentées sur un schéma comme ceci :

Comme voir est mieux que croire, je vais vous indiquer pas à pas comment changer l'icône d'un fichier XML (par exemple).

En premier lieu, ouvrez la BDR et rendez-vous dans HKEY_CLASSES_ROOT.
Vous devriez voir ceci :

Ensuite, recherchez le dossier portant comme nom '.xml', et ouvrez-le.

Information bien pratique et souvent oubliée : vous pouvez accéder directement au dossier recherché en tapant les premiers caractères du dossier en question. Vous vous retrouverez avec le dossier trouvé en surbrillance. ;)

Mémorisez ensuite la valeur du (default) contenue dedans. Il s'agit du nom descriptif du fichier concerné.

Vous aurez ceci :

Puis, rendez-vous au dossier portant ce nom descriptif, sachant qu'il est contenu au même niveau de HKEY_CLASSES_ROOT que les extensions, et ouvrez-le. Vous verrez à l'intérieur un dossier intitulé DefaultIcon, le dossier que nous cherchons.
Rendez-vous y et vous pourrez alors contempler le chemin de l'icône concernée, contenu dans la valeur du (default) de ce dossier.

En fait, vous voyez normalement ceci :

Pour modifier l'icône, faites un clic droit sur la clé (default) et sélectionnez Modify. Une boîte de dialogue s'ouvre, et vous pourrez alors sélectionner le chemin de l'icône voulue dans le champ Valeur avant de quitter.

Une illustration :

L'icône est ainsi changée. :)

2ème méthode : méthode manuelle (utilisation du winAPI) dans un code en C

Pour modifier le registre Windows dans votre code, vous aurez besoin d'inclure la bibliothèque nécessaire dans votre code, à savoir :

#include <windows.h>

Celle-ci, seule bibliothèque à intégrer au code pour se servir du winAPI, définit les fonctions permettant de manipuler le registre dont nous aurons besoin :

  • RegOpenKeyEx()
  • RegCreateKeyEx()
  • RegQueryValueEx()
  • RegSetValueEx()
  • RegCloseKey()

Ces fonctions agissent sur une variable de type "handle de clé" ou HKEY.

Maintenant que vous avez les informations nécessaires, allons créer notre code ;) .
Une fonction sera beaucoup plus pratique, pour la maintenance et la lisibilité du code. Je vous propose donc cette forme de fonction :

void changeIcon(const char *ext, const char *icon);

  • ext désigne l'extension dont on veut modifier l'icône
  • icon désigne le chemin de l'icône voulue

Voyons maintenant son contenu :

Les déclarations de variables

  • Le handle de clé :

HKEY key;

  • Une string qui va nous permettre de mémoriser ce dont nous avons besoin :

char mem[MAX_PATH] = "";

  • Une variable indiquant la taille de la string récupérée, pour queryValue :

DWORD kSize /* = 8192 */;

Etapes

  • Ouverture du dossier portant l'extension comme nom :

RegOpenKeyEx(
HKEY_CLASSES_ROOT, //Nom de la branche principale
ext, //Nom de la sous-clé (dossier), ici l'extension
0, //réservé
KEY_ALL_ACCESS, //Tout accès
&key //Taille de la donnée, en bytes
);

  • Récupération dans mem de la valeur du default :

RegQueryValueEx(
key,
NULL, //NULL, donc valeur de (default)
0,
NULL, //Taille de data (inutile)
(BYTE*)mem, //Buffer de sortie
&kSize
);

  • Ouverture du dossier DefaultIcon situé dans celui portant le nom descriptif du fichier :

strcat(mem, "\\DefaultIcon");
RegOpenKeyEx(
HKEY_CLASSES_ROOT,
mem,
0,
KEY_ALL_ACCESS,
&key
);

  • Remplacement du chemin d'accès à l'icône par celui de l'icône voulue :

RegSetValueEx(
key,
NULL, //(default)
0,
REG_SZ, //Type de data
(BYTE*)icon,
strlen(icon)+1 //Taille de data
);

  • On n'oublie pas de fermer la clé :

RegCloseKey(key);

Nous avons maintenant fait le tour, je pense... Voici donc le code complet de la fonction :

#include <windows.h>
void changeIcon(const char *ext, const char *icon)
{
HKEY key;
DWORD kSize;
char mem[MAX_PATH] = "";
RegOpenKeyEx(HKEY_CLASSES_ROOT, ext, 0, KEY_ALL_ACCESS, &key);

RegQueryValueEx(key, NULL, 0, NULL, (BYTE*)mem, &kSize);

strcat(mem, "\\DefaultIcon");
RegOpenKeyEx(HKEY_CLASSES_ROOT, mem, 0, KEY_ALL_ACCESS, &key);

RegSetValueEx(key, NULL, 0, REG_SZ, (BYTE*)icon, strlen(icon)+1);

RegCloseKey(key);
return;
}

Je n'explique pas ici comment revenir en arrière. Alors si c'est pour un test, prévoyez une méthode de rattrapage. Ce n'est pas bien compliqué, je vous propose de créer une clé de backup que vous pourrez copier dans le (default) quand vous en aurez marre. Vous avez normalement tout ce qu'il faut pour, mais si vous avez du mal, le forum est là. ;)

Rédacteur : Mg++

Lancement au démarrage de windows

Maintenant que vous avez normalement compris comment manipuler, que cela soit à partir de regedit ou du winAPI, la BDR, inutile de détailler autant. (C'est surtout que je n'ai plus de place pour les images. :p )

Alors dans cette partie, je vais vous apprendre comment lancer votre application au démarrage de Windows. C'est pas bien long, et pas bien compliqué, mais si vous n'avez pas entièrement compris le principe de la BDR ou comment la manier, je vous renvoie à la sous-partie n°2.

1ère méthode : semi-manuelle (au travers de regedit)

Afin d'ajouter un programme à la liste de démarrage (au startup, dans le jargon), il faut juste ouvrir le dossier Software\Microsoft\Windows\CurrentVersion\Run, situé dans la branche d'arborescence HKEY_CURRENT_USER (pour l'utilisateur actuel seulement, c'est préférable), et ajouter une clé registre portant comme ID votre nom de programme, et comme valeur son chemin d'accès.

Pour cela, placez-vous dans le dossier Run dont la place a été citée, faites un clic droit sur la zone d'énumération des clés registre (partie droite), sélectionnez New -> Key et spécifiez comme dit plus haut :

  • comme ID : votre nom de programme (peu importe)
  • comme valeur : son chemin d'accès.

Veillez à ne pas bouger votre programme entre temps, sinon l'ouverture du programme au startup échouera. Pour le parer, vous pouvez le placer dans un répertoire permanent, ou changer la clé à chaque fois.

Vous pouvez aussi spécifier des paramètres à votre exécutable (comme d'habitude), en délimitant le chemin d'accès des arguments (avec des guillemets), et en les plaçant à sa suite entre des espaces.

En ce qui conçerne sa suppression de la liste de démarrage, vous n'avez qu'à vous rendre dans le répertoire Run, et supprimer la clé que vous avez créée.

2ème méthode : manuelle (en utilisant le winAPI)

Pareil ici, rien de compliqué ou de long. Pour faire ce travail, je vous propose la fonction suivante :

void addToStartup (const char *path, const char *name, bool state);

  • path désigne le chemin d'accès à votre programme
  • name désigne le nom de votre programme
  • state est un booléen indiquant si vous voulez l'ajouter, ou le retirer de la liste de démarrage (true pour ajouter, false pour retirer).

Afin d'exécuter ce travail, une petite nouvelle fait son apparition parmi les fonctions que nous utilisons durant ce tuto : RegDeleteValue() .

Voyons maintenant le codage. Nous aurons besoin des variables suivantes :

  • Le handle de clé :

HKEY key;

  • Et c'est tout ! :)

Ensuite viennent les étapes. Les voici donc :

  • Ouverture du dossier Run pour y inscrire la clé :

RegOpenKeyEx(
HKEY_CURRENT_USER,
"Software\\Microsoft\\Windows\\CurrentVersion\\Run",
0,
KEY_ALL_ACCESS,
&key
);

  • Inscription de la clé (si state vaut true) :

RegSetValueEx(
key,
name,
0,
REG_SZ,
(BYTE*)path,
strlen(path)+1
);

  • Suppression de la clé (si state vaut false) :

RegDeleteValue(
key,
name
);

  • Fermeture de la clé :

RegCloseKey(key);

Et maintenant, le code complet :

void addToStartup(const char *path, const char *name, bool state)
{
HKEY key;
RegOpenKeyEx(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Run", 0, KEY_ALL_ACCESS, &key);
if(state)
RegSetValueEx(key, name, 0, REG_SZ, (BYTE*)path, strlen(path)+1);
else
RegDeleteValue(key, name);
RegCloseKey(key)
return;
}

Et voilà, vous pouvez mettre votre programme au démarrage ;) .
Rédacteur : Mg++

Association de fichiers

Dans cette partie, je vais vous apprendre comment associer votre programme avec un type défini de fichiers.

1ère méthode : semi-manuelle (à l'aide de regedit)

Ici, retour à la branche d'arborescence HKEY_CLASSES_ROOT, puisque c'est là que la gestion des extensions est faite.

Le processus est assez semblable au changement d'icône : un dossier portant l'extension du fichier comporte un (default) pointant vers un autre dossier (contenu au même endroit que l'extension) étant le nom descriptif du type de fichier. Mais comme vous avez pu le voir sur les captures d'écran, il y a d'autres dossiers dans celui-ci, autres que DefaultIcon. Dans un de ceux-ci, Shell, se trouve Open, et dedans se trouve enfin command.

Il se peut que pour certains types de fichiers (comme les fichiers musicaux), Open ne soit pas la seule commande disponible : il peut y avoir notamment Play... Dans ce cas-là, normalement on doit répéter l'opération, mais les entrées sont supprimées, si ce n'est pas le chemin de WMP (alala, Microsoft). Mais si vous voulez plus de précisions sur ces cas-ci, envoyez-moi un MP.

C'est sa valeur (default) qui va déterminer quel programme va lancer ce type de fichier à la commande Open du clic droit d'un ou plusieurs fichiers. En effet, il comporte le chemin d'accès au programme, suivi de soit "%1", si le programme n'ouvre qu'un fichier à la fois, soit "%L", s'ils sont plusieurs et donc listés.

En effet, %1 et %L sont des opérateurs batch : le premier sera remplacé par le seul, ou le premier fichier ouvert (puisqu'il n'en autorise qu'un), alors que l'autre sera remplacé par la liste des fichiers ouverts. Chacun se fait remplacer par des chemins d'accès absolus. Par exemple, "C:\Folder\Program.exe" /open "%1" enverra à l'exécution du programme "C:\Folder\Program.exe" comme premier argument, /open comme deuxième, et le chemin absolu du fichier ouvert en troisième.

Maintenant que vous avez vu l'organisation des associations, voici un exemple de nouvelle association de fichiers. Je vais vous expliquer comment associer Notepad++ aux fichiers .txt par exemple.

Voici la marche à suivre, comme vous l'avez deviné ;) :

  • ouvrez HKEY_CLASSES_ROOT
  • Repérez le dossier portant le nom .txt et ouvrez-le.
  • Mémorisez le (default) contenu à l'intérieur (à savoir txtfile).
  • Retournez dans HKEY_CLASSES_ROOT, et ouvrez txtfile.
  • Ouvrez maintenant successivement Shell, Open, et enfin command.
  • Modifiez la valeur du (default) par le chemin de NotePad++ entre guillemets (puisqu'il n'est pas la seule information), suivi d'un espace et de "%1"

Cette manoeuvre n'est qu'à titre indicatif, je ne sais pas si NotePad++ ne possède aucun argument excepté le fichier ouvert.

Voilà, l'association est terminée :)

2ème méthode : manuelle (en utilisant le winAPI)

Passons maintenant au codage.

Cette fois-ci, je vous propose la fonction suivante :

void associate(const char *ext, const char *path);

  • ext désigne l'extension à associer
  • path désigne le chemin d'accès à votre programme

Vous aurez besoin comme d'habitude de :

  • un handle de clé :

HKEY key;

  • une string tampon :

char mem[MAX_PATH];

  • Une taille d'info nécessaire à RegQueryValueEx() en bytes :

DWORD kSize /* = 8192*/;

Pour transcrire cette manoeuvre en code, vous n'aurez ni plus ni moins besoin que des fonctions citées précédemment.

Voici les étapes requises :

  • Ouverture du dossier portant l'extension comme nom :

RegOpenKeyEx(
HKEY_CLASSES_ROOT,
ext,
0,
KEY_ALL_ACCESS,
&key
);

  • Récupération dans mem de la valeur du default :

RegQueryValueEx(
key,
NULL,
0,
NULL,
(BYTE*)mem,
&kSize
);

  • Ouverture du dossier pointé, en précisant la commande d'ouverture du shell :

strcat(mem, "\\Shell\\Open\\command");
RegOpenKeyEx(
HKEY_CLASSES_ROOT,
mem,
0,
KEY_ALL_ACCESS,
&key
);

  • Remplacement du chemin d'accès par celui de votre programme :

//Changez le %1 par %L dans le cas d'une sélection multiple possible
sprintf(mem,"\"%s\"/*arguments possibles*/ \"%1\"", path);
RegSetValueEx(
key,
NULL,
0,
REG_SZ,
(BYTE*)mem,
strlen(mem)+1
);

  • Fermeture du handle de clé :

RegCloseKey(key);

Et voici la fonction complète (incluant la prise en compte des erreurs) :

Je n'ai pas prévu dans cette fonction de moyen de retour, donc prévoyez un système de copie comme celui que j'ai décrit dans la deuxième partie pour le changement d'icônes au cas où...

void associate(const char *ext, const char *path)
{
HKEY key;
DWORD kSize;
char mem[MAX_PATH] = "";
if(RegOpenKeyEx(HKEY_CLASSES_ROOT, ext, 0, KEY_ALL_ACCESS, &key) == ERROR_SUCCESS)
{
RegQueryValueEx(key, NULL, NULL, NULL, (BYTE*)mem, &kSize);
strcat(mem, "\\Shell\\open\\command");
if(RegOpenKeyEx(HKEY_CLASSES_ROOT, mem, 0, KEY_ALL_ACCESS, &key) == ERROR_SUCCESS)
{
sprintf(mem,"\"%s\" \"%1\"", path);
RegSetValueEx(key, NULL, 0, REG_SZ, (BYTE*)mem, strlen(mem)+1);
}
}
RegCloseKey(key);
return;
}

Et vous avez votre association. :)

Veillez à ne pas bouger votre exécutable après, sinon l'ouverture échouera.

Rédacteur : Mg++

Si vous avez des questions de précision ou des problèmes, n'hésitez pas à poster dans le forum, il est fait pour ça ;) .

Les fonctions n'ont pas été testées mais marchent sans doute possible. Néammoins dans le cas contraire, veuillez m'adresser un MP.

N'oubliez pas de prévoir une solution de suppression pour chacun des cas.


Divers.htm

DIVERS

Utiliser le style du Windows courant

Vous allez ici apprendre à donner le style de votre Windows actuel à votre application.

Téléchargement préalable

Pour cela, vous aurez besoin d'un fichier manifeste, se présentant sous la forme d'un fichier xml.

Commencez donc par télécharger celui-ci .
(Clic droit + Enregistrer sous...)

Si le téléchargement échoue, sachez qu'il s'agit seulement d'un fichier codé en ASCII (donc avec NotePad, par exemple) et renommé en .xml, contenant le code suivant :

<assembly manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="CompanyName.ProductName.YourApplication" type="win32"/>
<description>Description de votre application ici.</description>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*"/>
</dependentAssembly>
</dependency>
</assembly>

Association

Pour associer le manifeste à votre application, vous disposez de deux méthodes :

  • dynamiquement, donc pendant l'exécution
  • en utilisant les ressources, ceci pour l'intégrer à l'exécutable.
Dynamiquement

En utilisant cette méthode, l'exécutable utilisera le manifeste situé dans le même dossier que celui-ci.
Commencez par renommer votre manifeste avec le nom de votre exécutable comme radical, et avec ".manifest" comme extension. Par exemple, si votre exécutable s'appelle "Programme.exe", alors renommez "manifest.xml" en "Programme.exe.manifest".

Vous n'avez plus qu'à placer le manifeste renommé dans le répertoire contenant votre exécutable.

En utilisant les ressources

Vous avez peut-être envie de vous débarrasser de quelques fichiers entourant l'exécutable, en les intégrant aux ressources ? Comme le manifeste, par exemple ? :p
Bien. Alors tout se passe à la compilation. Rajoutez à votre script ressource (*.rc) le code d'intégration suivant :

1 24 "manifest.xml"

Dans ce cas-ci, 1 est l'ID du manifeste, 24 son type, et "manifest.xml" son chemin.

Modifiez-le en conséquence s'il ne se trouve pas dans le répertoire des codes sources.

Attention, dans certains cas (je n'en connais pas la raison à ce jour), vous obtiendrez une fenêtre vide. Alors, la procédure à observer est la suivante :

  • Inclure <commctrl.h>.
  • Appeler InitCommonControls() au début du programme.
  • Linker le projet avec comctl32.lib ou libcomctl32.a (selon le compilateur utilisé).

Pour les feignants utilisant Code::Blocks, vous pouvez passer outre ces étapes, simplement en accédant à l'entrée Windows XP look'n'feel via le menu Plugin.

Vous n'avez plus qu'à contempler votre application disposer du style du Windows courant. ;)
Rédacteur : Mg++

La notation hongroise

La notation hongroise est une notation largement employée par Microsoft, qui consiste à faire apparaître, dans le nom de chaque variable, le type de celle-ci.

Les avis sont partagés à son sujet : à savoir si elle est utile ou non, productive ou non, mais toujours est-il qu'elle reste employée, et qu'on a tout intérêt à la comprendre.

Principe

Nous allons donc ici décrire les sigles qui reviennent le plus souvent.
En fait, elle consiste à préfixer en minuscules le nom de la variable (qui commence alors par une majuscule) par le sigle de son type.

Exemple:

HANDLE hWnd;
INT iX;
CHAR cCode;

Les préfixes

Les préfixes utilisés sont:

  • i : entier (int ou INT en général)
  • n : entier court (short int ou SHORT)
  • l : entier long (long int ou LONG)
  • f : nombre à virgule flottante simple précision (float ou FLOAT)
  • d : nombre à virgule flottante double précision (double ou DOUBLE)
  • c : caractère (char ou CHAR) ou un dénombrement
  • ch : caractère (char ou CHAR)
  • b : booléen (bool ou BOOL)
  • s : chaîne de caractères (CHAR *, PCHAR, LPSTR, LPCSTR, ...)
  • sz : chaîne de caractères terminée par un zéro (CHAR *, PCHAR, LPSTR, LPCSTR, ...)
  • w : mot ou "word" en anglais (WORD)
  • dw : double-mot ou "double word" en anglais (DWORD)
  • h : handle (HANDLE, HWND, HFILE, HBITMAP, ...)
  • pt : point (POINT)
  • rgb : couleur (RGB) [rarement utilisée]
  • str : encore une autre façon de préciser une chaîne de caractères.

Les modificateurs

Il existe aussi quelque modificateurs:

  • u : non-signé. Exemple : ul pour ULONG
  • lp, p ou p_ : pointeur sur quelque chose. Exemple : lpstr ou psz...
  • a ou ar : tableau (ou "array" en anglais) [rarement utilisé]
  • m_ : membre d'une classe (C++) ou d'une structure
  • g_ : variable globale
  • s_ : variable statique (correspondant au mot-clé static en C/C++).

Exemples

Ainsi, en mélangeant les deux, on peut obtenir ceci par exemple :

LPSTR g_szName;// variable globale qui est une chaîne de caractères terminée par zéro.
struct Truc
{
PPOINT m_lpptPosition;// variable membre d'une structure, pointeur sur une structure de type point.
};
INT cbExtra;// nombre(le 'c') d'octets(le 'b') supplémentaires (à allouer par exemple)

Évidemment, il ne faut pas en abuser. Dans l'exemple précédent, cela alourdit inutilement l'expression ; on pourra omettre le "pt".

Rédacteur : Pamaury

Quelques codes...

Depuis la parution de mon tutoriel, j'ai répondu à diverses questions, parfois en fournissant un code fonctionnel. J'ai donc décidé de répertorier ici-même ces différents codes afin que vous puissiez en profiter ;)

Gestion du presse-papier

Le presse-papier revient souvent sur les forums, en particulier en ce qui concerne les futurs traitements de texte en WinAPI. C'est pour cela que j'ai créé deux petites fonctions toutes simples permettant sa gestion, GetClipboardText() et SetClipboardText(), qui conviendront aux moins exigeants, tout en inspirant les plus exigeants :) :

#include <windows.h>
/* goto peut être utilisé si la redirection est dans le sens direct de la lecture du code (on évite le code spaguetti), et que son utilisation est claire... Pour moi, ça l'est. */
#define REDIRECT_IF(condition, label) if(condition) goto label

#define EXIT_LABEL local_exit
#define EXIT_IF(condition) REDIRECT_IF(condition, EXIT_LABEL)

/* Quand "on colle" : */
char *GetClipboardText()
{
char *text = NULL;

EXIT_IF(!IsClipboardFormatAvailable(CF_TEXT));

EXIT_IF(!OpenClipboard(NULL));

{
char *textMem = (char*)GetClipboardData(CF_TEXT);

/* free devra être utilisé une fois le texte utilisé */
text = malloc((lstrlen(textMem)+1) * sizeof *text);
lstrcpy(text, textMem);
}

CloseClipboard();

EXIT_LABEL:
return text;
}
/* Quand "on copie" : */
int SetClipboardText(char const *text)
{
int ret = 0;

HANDLE hGlobalMem = GlobalAlloc(GHND, lstrlen(text)+1);
char *lpGlobalMem = NULL;

EXIT_IF(hGlobalMem == NULL);

lpGlobalMem = (char*)GlobalLock(hGlobalMem);

EXIT_IF(lpGlobalMem == NULL);

lstrcpy(lpGlobalMem, text);

GlobalUnlock(hGlobalMem);

EXIT_IF(!OpenClipboard(NULL));

EmptyClipboard();

if(SetClipboardData(CF_TEXT, hGlobalMem) != NULL)
ret = 1;

CloseClipboard();

EXIT_LABEL:
return ret; /* 1 : Succeed, 0 : Failure */
}

En ce qui concerne la détection du copier-coller, mieux vaut se fier à des fonctions dédiées à ces opérations, en spécifiant sa fenêtre listener des opérations de copier-coller, grâce à SetClipboardViewer() . Ainsi, toute modification du presse papier se traduira par la réception du message WM_DRAWCLIPBOARD , qu'il faudra traiter.

Gestion du drag and drop

La question du drag-and-drop est aussi quelque peu récalcitrante, puisque l'API Windows ne fournit pas de système direct pour s'en charger. J'en ai jadis proposé un, qui se résume à une unique fonction GetDroppedFilesPaths() :

Citation : Moi

Un petit exemple censé écrire les chemins des fichiers lâchés sur la fenêtre dans un fichier (situé dans le même répertoire que l'exécutable) nommé "Result.txt" (pas compilable tel quel).

/* Callback procedure : Soit hwnd (HWND) et wParam (WPARAM), passés en paramètre à la procédure. */
case WM_CREATE:
/* Ne pas oublier d'accepter les drag-and-drop ;) */
DragAcceptFiles(hwnd, TRUE);
return 0;
case WM_DROPFILES:
{
CHAR **paths = NULL;
UINT count = GetDroppedFilesPaths((HDROP)wParam, paths);

WritePathsToFile(paths, count, "Result.txt");
/* On n'oublie pas de libérer la mémoire allouée */
{
UINT i = 0;
while(i < count)
free(paths[i++]);
free(paths);
}
/* Ne pas oublier de finir la procédure de drag */
DragFinish((HDROP)wParam);
return 0;
}

Avec :

/* Il aurait mieux fallu utiliser le système de gestion des fichiers de l'API, mais bon... */
#include <stdio.h>
#include <windows.h>
VOID WritePathsToFile(
CONST CHAR ** CONST paths,
CONST UINT count,
LPCSTR resPath
)
{
FILE *file = NULL;
file = fopen(resPath, "a");
if(file != NULL)
{
for(UINT i = 0 ; i < count ; i++)
fputs(paths[i], file);

fclose(file);
}
}
static UINT GetDroppedFilesCount(HDROP hDrop)
{
return DragQueryFile(hDrop, 0xFFFFFFFF, NULL, 0);
}
static UINT GetDroppedFileLen(HDROP hDrop, CONST UINT index)
{
return DragQueryFile(hDrop, index, NULL, 0);
}
UINT GetDroppedFilesPaths(HDROP hDrop, CHAR **paths)
{
const UINT count = GetDroppedFilesCount(hDrop);
paths = malloc(count * sizeof *paths);
if(paths == NULL)
return 0;
for(UINT i = 0 ; i < count ; i++)
{
const UINT droppedFilePathLen = GetDroppedFileLen(hDrop, i);
paths[i] = malloc(droppedFileLen * sizeof *paths[i]);
if(paths[i] == NULL)
return i;
DragQueryFile(hDrop, i, paths[i], droppedFileLen);
}
return count;
}

Il faut bien évidemment autoriser la fenêtre au drag-and-drop via les styles de la fenêtre ou DragAcceptFiles()...

N'oubliez pas de libérer la mémoire allouée par les chemins des fichiers récupérés ! Gare aux fuites de mémoire dans le cas contraire...

Gestion d'une icône dans la barre des tâches

Voici deux fonctions toutes simples permettant de minimiser et de restaurer une application :

/* Cache ton application et place une icône dans la barre de tâches,
dont le handle est hIcon, szTip le message affiché dans une petite bulle (due au
survol prolongé de la souris), et msg le message callback, permettant de traiter
les événements */
NOTIFYICONDATA *Minimize(HWND handler, HICON hIcon, LPCTSTR szTip, UINT msg)
{
NOTIFYICONDATA *nim = malloc(sizeof *nim);
nid->cbSize = sizeof(NOTIFYICONDATA);
nid->hWnd = handler;
nid->uID = 0;
nid->hIcon = hIcon;
nid->uCallbackMessage = msg;
nid->uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP;
strcpy(nid->szTip, szTip);
Shell_NotifyIcon(NIM_ADD, nid);
ShowWindow(handler, SW_HIDE);
return nid;
}
void Restore(NOTIFYICONDATA *data)
{
ShowWindow(data->hWnd, SW_SHOW);
Shell_NotifyIcon(NIM_DELETE, data);
}

Et voilà un exemple d'utilisation :

/* Par exemple, la zone utilisateur étant située après WM_USER */
#define TI WM_USER+1
/* On minimise la fenêtre en récupérant une structure qui servira à la restaurer */
NOTIFYICONDATA *data = Minimize(hwnd, LoadIcon(hInstance, "Icon"), "Je suis une TrayIcon", TI);
/* ... */
/* On restaure la fenêtre */
Restore(data);
/* Et on n'oublie pas de libérer la mémoire... */
free(data);
/* ... */
/* Quant au switch du low-word du message : */
case TI:
/* Traitement, par exemple avec TrackPopupMenuEx(), voir msdn */

Encore une fois, n'oubliez pas de libérer la mémoire occupée par l'instance de NOTIFYICONDATA nouvellement créée !

Une idée à fouiller lors de l'encapsulation

Un jour on m'a demandé si c'était possible de spécifier une méthode comme callback, et voici ce que je lui ai répondu :

Citation : Moi

Le fait est que... C'est impossible ^^ La callback doit être statique. Edit: Question de signature... Ca paraît logique avec la structure WNDCLASSEX

Tu dois donc contourner le problème. Voici ce que je te propose : Utilise SetWindowLongPtr() après création de ta fenêtre pour passer l'objet courant (obtenu à travers la structure CREATESTRUCT passée par le LPARAM de la callback statique) en tant que pointeur récupérable grâce à GetWindowLong() (par exemple, à l'emplacement GWLP_USERDATA) dans la callback statique qui se chargera alors de rediriger les événements perçus vers les callbacks virtuelles correspondantes.

Fouille cette idée, si tu as du courage :

class Wnd
{
HWND m_handle;

//...

static LRESULT StaticProc(HWND, UINT, WPARAM, LPARAM);
static LRESULT DefProc(HWND, UINT, WPARAM, LPARAM);

//...

virtual LRESULT virtualProc(UINT, WPARAM, LPARAM); //Pure ou pas

//...
};

class MyWnd : public Wnd
{
//...

virtual LRESULT virtualProc(UINT, WPARAM, LPARAM); //Override
};

LRESULT Wnd::StaticProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
LRESULT ret = 0;

//Si la fenetre est en creation, le pointeur n'a pas ete encore initialise
if(uMsg == WM_NCCREATE)
{
/* SetWindowLongPtr() de 'this' contenu dans lParam grâce au dernier paramètre
de CreateWindowEx() -> Voir CREATESTRUCT structure */
SetObjectFromCreateStruct(hWnd, lParam); //A toi de la créer...
}

Wnd *pObj = reinterpret_cast<Wnd*>(GetWindowLongPtr(hWnd, GWLP_USERDATA));
if(pObj != NULL)
ret = pObj->virtualProc(uMsg, wParam, lParam);
else
ret = DefProc( hWnd, uMsg, wParam, lParam);

return ret;
}

Cela reste primitif, mais c'est une solution à envisager lorsqu'on est nous-même Orienté Objet ( ^^ ) et que l'on est réticent à utiliser MFC. Cela permet en outre de bien contrôler les rouages d'une API ainsi simplifiée.

Utiliser les Dynamic Link Library

Ou DLL qui vous permettent de découper le code dans d'autres fichiers joints à l'exécutable, soit afin de l'alléger (on lie tout de même statiquement pour s'affranchir des contraintes de chargement dynamiques, tout se passe comme s'il s'agissait d'une bibliothèque statique [.a, .lib] à la génération, mais les bibliothèques sont stockées à part dans des DLL), soit liées dynamiquement (chargement de la DLL et de ses fonctions à l'exécution, dans le code, aucune opération de linker). Les DLL permettent une maintenance facilitée, pour par exemple des mises à jour sur des points particuliers, simplement en remplaçant uniquement des DLL, sans toucher au reste. Elles sont particulièrement utiles pour les plugin.

DavySharp974, que je remercie au passage, nous propose une bibliothèque qui regroupe le code de liaison dynamique des DLL dans 3 fonctions. On ne détaille pas la création desdites DLL et d'une manière générale leur fonctionnement, mais cela peut vous faciliter la vie. Et qui sait, cela sûrement complété.

Citation : DavySharp974

Dans cette partie, vous pourrez apprendre comment charger dynamiquement une DLL sous Windows :) Pour ce faire, il vous faut télécharger libDLL

Dézippez les fichiers et mettez-les dans les bons emplacements (excepté le fichier 'test_dll.dll' qui doit être dans le même répertoire que votre projet de test).
Au cas où le lien soit cassé, ou pour simple information, voilà le code de la bibliothèque :

sqdll.h

/*
Library for DLL loading.
by Davy Sharp
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef __SQ_EXT_DLL_H
#define __SQ_EXT_DLL_H
#if !defined _WIN32 && !defined __Win32__
#error "libDLL was designed to be used uner Windows only !"
#endif
#ifdef __cplusplus
extern "C"
{
#endif
typedef struct sq_dll_struct_t* sqdll_t;
sqdll_t dll_load(const char* file_name);
void dll_free(sqdll_t dll_ptr);
void* dll_function(sqdll_t dll_ptr, const char* function_name);
#ifdef __cplusplus
}
#endif
#endif // __SQ_EXT_DLL_H

sqdll.c

#include <windows.h>
#include "sqdll.h"
struct sq_dll_struct_t
{
HINSTANCE h_dll;
};
void* dll_function(sqdll_t dll_ptr, const char* function_name)
{
if (dll_ptr != NULL)
{
return GetProcAddress(dll_ptr->h_dll, function_name);
}
else
{
return NULL;
}
}
sqdll_t dll_load(const char* file_name)
{
sqdll_t ptr = malloc(sizeof(*ptr));
if (ptr != NULL)
{
ptr->h_dll = LoadLibrary(file_name);
if (ptr->h_dll == NULL)
{
free(ptr);
ptr = NULL;
return ptr;
}
}
return ptr;
}
void dll_free(sqdll_t dll_ptr)
{
if (dll_ptr != NULL)
{
FreeLibrary(dll_ptr->h_dll);
free(dll_ptr);
}
}

Nos pouvons à présent commencer à coder notre programme de test.
Ecrivez un main vide, avec un 'return 0' à la fin.

int main(int argn, char** argv)
{
return 0;
}

Dans le header 'libdll.h', libDLL définit trois fonctions, les trois seules dont vous aurez besoin pour utiliser une DLL.

la première fonction s'appelle sqdll_t* dll_load(const char* nomDuFichierDLL). Comme son nom l'indique (où pas :p ), elle sert à charger la DLL.

Nous avons donc:

int main(int argn, char** argv)
{
sqdll_t maDLL = dll_load("test_dll.dll"); // Chargement de la dll 'test_dll.dll' qui devrait être dans le répertoire de votre projet
return 0;
}

Ensuite, la fonction la plus importante, celle qui permet d'utiliser les fonctions de la DLL, s'appelle void* dll_function(sqdll_t*, const char* nomDeLaFonction)

Elle prend en premier paramètre le pointeur de Handle de DLL et en second paramètre le nom de la fonction à charger.
Son retour est de type void* car elle ne sait pas le type de retour et celui des arguments de la fonction qu'on charge.

En revanche, nous, on le connait :) la DLL 'test_dll.dll' contient une fonction int ajouter(int a, int b)

Nous déclarons donc le pointeur sur la fonction ajouter comme ceci: int (*ajouter)(int, int)

Je récapitule, finalement, le code écrit est

int main(int argn, char** argv)
{
sqdll_t maDLL = NULL; // On initialise à NULL
int (*ajouter)(int, int) = NULL; // On initialise à NULL
maDLL = dll_load("test_dll.dll"); // Chargement de la dll 'test_dll.dll' qui devrait être dans le répertoire de votre projet
if (!maDLL) // Si le chargement a échoué...
{
printf("Erreur, impossible de trouver 'test_dll.dll' !"); // On affiche un message d'erreur...
return -1; // Et on renvoie un code d'erreur
}
ajouter = dll_function(maDLL, "ajouter"); // On charge la fonction 'ajouter' depuis la DLL
if (!ajouter) // Si le chargement a échoué...
{
printf("Erreur, impossible de trouver la fonction 'ajouter' dans 'test_dll.dll'); // On affiche un message...
dll_free(maDLL); // Ne pas oublier de libérer la DLL, même si la fonction n'a pas été trouvée dedans
return -2; // Et on renvoie un code d'erreur
}
// Si on arrive jusqu'ici, c'est que tout s'est bien passé
printf("La somme de %d et %d est %d", 429, 763, ajouter(429, 763)); // On utilise la fonction 'ajouter'
dll_free(maDLL); // on n'oublie pas de libérer la DLL en quittant
return 0;
}

Il me semblait en avoir d'autres en réserve, mais je vous avoue que j'ai un peu la flegme de me plonger dans mon courrier dans une chasse aux codes :-°
D'autres surgiront peut-être ?

Rédacteur : Mg++

Les annexes ne sont pas finies, elles sont avancées au fur et à mesure de la progression du tuto ;)


Programmes.htm

PROGRAMMES

Bonjour ! Je poste ici pour vous présenter un programme que j'ai jadis créé : NeoBlast.

Qu'est ce que c'est ?

NeoBlast (en français : "Souffle Nouveau") est un lecteur audio avancé pouvant lire la totalité des fichiers audios présents sur vos ordinateurs respectifs :

  • Wave
  • mp3
  • Wma
  • Ogg
  • etc...

Comment ?

J'ai utilisé la bibliothèque fmod afin d'avoir le plus de fonctions possible permettant de manipuler les fichiers audio pour les implémenter dans mon programme.

[Malheureusement, même si celle-ci est portable, la bibliothèque graphique utilisée (GUI) étant le windows API ou API win32 n'est pas portable, et ne fonctionnera que sous Windows.]

Que fait-il de spécial ?

NeoBlast ne fait rien de vraiment "spécial", mais se contente d'avoir la plupart des fonctionnalités des lecteurs audio "pro" présents sur le net :

  • lecture des fichiers audio (logique)
  • gestion de playlist
  • Drag and drop dans la playlist
  • Seeker
  • affichage en temps réel des infos de la musique (temps, titre, etc.)
  • fonctions principales (Play / Pause / Stop / Next / Previous)
  • ouverture simple des fichiers musicaux en unic ou multi select à travers une boite de dialogue d'ouverture
  • chargement / Sauvegarde de playlist au format m3P (format propriétaire)
  • scan du / des disques pour trouver automatiquement les fichiers audio
  • possibilité de rejouer la playlist arrivée à la fin
  • Shuffle
  • possibilité de lancer NeoBlast au démarrage :
  • minimisé
  • avec une playlist spécifiée
  • Skin améliorés

Parlons-en des skin... ils sont comment ?

Pour vous faire une idée, voici :

Le skin principal :

Le skin de la playlist :

Un grand merci à Musethebest pour la conception des skin... d'ailleurs un peu de pub :p .

[Le noir est utilisé pour la présentation : l'utilisation des régions m'a permis de pouvoir avoir des fenêtres ayant la forme de ces skins (avec la couleur noire comme transparente) sans barre de titre.]

Pour bouger les fenêtres modélisées par les skins, exécutez un drag avec le bouton droit de la souris. (voir "Help" pour quelques précisions).

Génial ! Où le télécharger ?

(Bin quoi, c'est possible non ? :-° )

Vous pourrez le télécharger (en étant équipé d'un extracteur de rar / zip) à partir des liens ci-dessous :
(N'oubliez pas de lire le fichier "Help" situé dans le menu Démarrer, et s'il vous plaît, ne sautez pas la licence.)

Liens :
  • Télécharger NeoBlast v1.0 (Anglais
  • Télécharger NeoBlast v1.0 (Français)

Place aux tests

Voilà la présentation est terminée, place aux tests !

Vous pourrez consulter les codes sources (C) présents dans le répertoire d'install de NeoBlast ; attention, ils sont très indigestes, je l'ai créé à mes débuts, n'étant à cette époque pas rigoureux.

Si vous avez des avis, des commentaires, des critiques [constructives] ou encore des suggestions, n'hésitez pas à écrire dans mon livre d'or situé sur mon site e-Synapse , où une présentation dudit logiciel est aussi présente (au cas où).

Le prochain programme à paraître est PlayTyle, nettement pus évolué et codé à l'aide d'MFC. Sa sortie n'est toutefois pas prévue pour demain, même s'il est bien avancé :lol:

Remerciements :
  • Musethebest qui s'est occupé des skins
  • Médinoc qui m'a beaucoup aidé sur le forum de developpez.com

___________________________________|

|_________________________________

DdPop, de damien.09

Qu'est ce que c'est ?

En quoi cela consiste t'il : (principales caractéristiques)
  • Programme permettant de s'échanger des messages sur un réseau local comme sur internet. (avec l'adresse IP ou le nom du PC distant)
  • Possibilité de s'échanger des fichiers (depuis la version 3.0 du 14/04/07)
  • Mettre en contact jusqu'a 8 personnes. (il faut pour cela le module DDpop-Serveur : vous pourez virer les utilisateurs qui sont pas sages :p )
  • Faire en sorte que le programme démarre et se connecte automatiquement à l'ouverture d'une session.
  • Possibilité de minimiser l'application dans la systray (=barre d'icône à coté de l'horloge).
  • Choix du port utilisé.
  • Choix de la police de caractère ainsi que des couleurs (couleur de fond et couleur du texte).
  • Vous pouvez aussi envoyer des Wizz (comme sur MSN).
  • Quelques sons pour agrémenter le tout.
Points n'ayant pu être développés :
  • Le multiplateforme : il marche que sous Windows :o (je me suis tout de même efforcé d'assurer la compatibilité avec Windows98 :) ).

Un aperçu

Lien et contact

Voici l'adresse ou vous pouvez télécharger DDpop : http://damien09.programmes.site.voila.fr/index.html . Il est conseillé de télécharger également le module DDpop-Serveur (ça va avec DDpop) comme ça vous pourrez être 8 à dialoguer ;) .
Les téléchargements (DDpop et DDpopServeur) incluent une Documentation expliquant le fonctionnement du programme correspondant, n'hésitez pas à la consulter.

Infos

Les caractéristiques indiquées ci-dessus ne sont peut être pas celles de la dernière version, si vous voulez les caractéristiques de la version actuelle référez vous à cette page .
DDpop et DDpop-Serveur sont des programmes codés en C++ avec l'API Windows par Dando.D.

N'hésitez pas à laisser des commentaires ici ou à me poser des questions :) et prevenez moi si vous trouvez des bugs.

La liste n'est pas complète, n'hésitez pas à rajouter les votres !

Sauf mention contraire, tous les projets sont sous licence GPL, et peuvent donc être étudiés (pas d'appropriation, et les modifications entraîneront obligatoirement une citation du créateur originel).

Pour ajouter votre projet à cette liste, créez un chapitre (mini-tuto), rédigez votre présentation avec une dernière sous-partie étant "Liens", puis copiez-collez vos rédactions (en zCode) dans un MP que vous m'enverrez ; je m'occuperais de la mise à jour.

Si vous avez des problèmes, contactez nous par MP.

Pour en savoir plus : Image utilisateur